DataSet ou Modèle de Données d'Entité

Veuillez nous excuser pour la question de noob que je suis de nouveau à l'intégration de données avec mes applications. J'ai essayé de trouver des réponses sur le net, mais pas encore là.

J'ai une application que je suis le développement en C# sur VS2010 qui exige/sortie de données à partir d'une base de données. Je suis en train de voir si ses un jeu de données ou Modèle de Données Entité-je besoin pour utiliser lors de la configuration d'une source de données. Ma compréhension est que c'est l'EDM qui m'a permis de traiter des tables/champs dans une base de données comme des objets, mais de toute façon il semble que je peux le faire avec un jeu de données trop.

Certaines sources expliquent que d'un jeu de données fait une copie en cache de la Base de données qui peuvent ensuite être manipulées.

Essentiellement ma question est que dois-je utiliser et quels sont les (dés)avantages de l'un sur l'autre.

  • Ce sujet de LINQ to SQL, ou NHibernate, ou Micro Orm, ou tout simplement vieux ADO.net? Votre question est énorme et presque sans réponse. Une couche d'accès aux données est bien sûr un élément clé de tout piloté par les données de l'application, mais c'est beaucoup trop importante pour un sujet à couvrir en une seule SORTE de réponse. Je vous conseille d'investir dans plusieurs livres.
  • À l'heure actuelle je suis en train de lire sur LINQ, mais de là à utiliser LINQ pour interroger ma base de données, j'ai besoin d'accéder à ma base de données, pour laquelle j'ai besoin de comprendre si je suis à l'utilisation du jeu ou de l'EDM. J'apprécie c'est un trop grand sujet de couvrir en une seule et unique réponse, mais je me demandais si quelqu'un pouvait me donner quelques conseils qui j'ai pu ensuite poursuivre. Merci pour votre prompte réponse.
  • La seule chose que je voudrais ajouter, c'est que vous ne pouvez pas vraiment décider sur une couche d'accès aux données sans tenir compte de comment il s'intègre dans le reste de votre architecture. J'ai essayé la plupart des options et à la fin de la couche d'accès aux données je viens d'utiliser du SQL via ADO.net (il est vrai que tous les produits par l'intermédiaire d'un système de génération de code). C'est rapide, propre et n'attachez pas votre application est aujourd'hui la technologie.
  • De plus, ma compréhension était ADO.NET est le dieu tout-puissant de tous les accès aux données dans .NET et que DataSet/EDF vient plus bas dans la hiérarchie. James, vous avez dit: pourquoi ne puis-je pas utiliser le bon vieux ADO.NET. Il semble que je suis très mal venu.
  • Je voulais vraiment la simple utilisation de vieux ADO.Net dans le sens de simplement en utilisant les objets de connexion pour exécuter SQL. Un dataset est une abstraction sur le dessus de cela, je vous recommande simplement à l'aide de datareaders que ce sont le niveau le plus bas que vous pouvez obtenir. Tout le reste introduit une barrière entre vous et la base de données. Mais c'est juste mon avis, certaines personnes comme les poids des abstractions. Si vous êtes en utilisant une architecture de raison que du bon, mais je pense que souvent, nous les utiliser parce qu'ils sont "faciles" à obtenir - sont - ils- mais ils sont difficiles à sortir.
  • Merci beaucoup James. Je vais retourner à la planche à dessin à nouveau!
  • S'il vous plaît ne me laissez pas vous mettre hors de vous posez les bonnes questions - assurez-vous simplement obtenir un large éventail de réponses et de ne pas fixer sur une partie de la technologie parce que c'est à la mode ou il est facile à utiliser. EF et des ensembles de données ont évidemment leur utilisation ou ils n'existent pas. C'est juste la façon dont vous vous approchez à la question avec ces deux seules options qui ont fait de moi un commentaire!
  • C'est quasiment une question ouverte. Vous pourriez ainsi demandé "j'ai une application qui a besoin de lire/écrire à partir de la base de données. Dans quelle langue dois-je utiliser?"

InformationsquelleAutor Vim | 2012-02-29