Est ADO.NET dans .NET de Base possible?
Je voudrais utiliser les versions les plus récentes de ASP.NET de Base, parce que je veux créer un ensemble d'Api Web avec elle. Cependant, les tutoriels que j'ai trouvé sont fortement axées sur Entity Framework. Je ne peux pas l'utiliser parce que j'ai déjà un "héritage" de la base de données, donc un Code-Première approche n'est pas une option.
Mon idée est d'utiliser ADO.NET les connexions à ma base de données, mais je ne sais pas si System.Data.SqlClient
est disponible dans une ASP.NET projet de Base. J'ai déjà trouvé qui est disponible lorsque j'utilise un .NET Framework est un modèle de projet, mais est-il toujours disponible dans une .NET de Base du projet?
- Bien avez-vous essayé de l'utiliser dans un .NET de Base du projet? Cela me semble la plus évidente de la première pièce de la recherche à faire.
- Je l'ai déjà fait, je ne peut pas compiler, car "SqlDataAdapter n'a pas pu être trouvé". Apparemment Système.Les données ne sont pas disponibles dans .NET de Base du projet. Il y a deux options: l'application Web .NET de Base à l'aide de Cadre de Base, et une autre application Web .NET de base à l'aide .NET Framework. Lorsque je choisis le premier que j'ai eu ce problème.
- Eh bien, il ne serait pas disponible sans l'ajout d'une dépendance, mais vous devriez essayer de voir si il y a un .NET de Base compatible dépendance que vous pourriez utiliser...
- Donc, je dois installer un Système.Les données.SqlClient via NuGet?
- Ainsi, par l'intermédiaire d'un package nuget, mais pas via nuget client... vous auriez l'exprimer comme une dépendance dans votre fichier de projet.
Vous devez vous connecter pour publier un commentaire.
L'existant
SqlConnection
et d'autres connexions existe encore au sein de laSystem.Data.SqlClient
espace de noms et doit fonctionner comme prévu à l'aide du plein cadre ou .NET de Base.Vous aurez juste besoin d'ajouter les références appropriées, et à l'aide des déclarations de l'inclure comme par la
System.Data.SqlClient
espace de noms comme on le voit ci-dessous dans votreproject.json
fichier :et ensuite appeler par l'intermédiaire de la syntaxe que vous vous êtes habitué :
Donc, tant que vous avez une chaîne de connexion valide pour se connecter à votre base de données existante, vous devriez être bien.
Concernant l'Utilisation de l'ORM
Ces Orm (object-relational mappeurs) sont à portée de main et, souvent, des outils puissants qui peuvent plus facilement le plan de votre base de données existante de données spécifiques à des classes et des objets, ce qui peut les rendre plus faciles à utiliser (par opposition à une itération à travers un lecteur de données, l'analyse de chacune de vos lignes et la construction de chaque objet manuellement).
Autant que la performance va, il dépend finalement de ce que vous allez faire avec vos requêtes. ADO.NET sera généralement le plus rapide comme un bare-bones de connexion à la base de données, toutefois, dans certains scénarios Dapper peut battre ça. Entity Framework, bien que très utile, généralement derrière des performances, tout simplement parce qu'il est tel un grand ORM.
De nouveau - il en fin de compte dépend de ce que vous faites, mais tous sont des options viables.
.NET Core 2.0 a DataSet, DataTable et SQlDataAdapter. Voir ma réponse à https://blogs.msdn.microsoft.com/devfish/2017/05/15/exploring-datatable-and-sqldbadapter-in-asp-net-core-2-0/ .
Code ci-dessous fonctionne très bien
Il est important de noter que .NET de Base n'a pas DataSet, DataTable et objets connexes avant la version 2.0. Mais avant 2.0, on a tous des fonctionnalités de base comme Connexion, de Commande, Paramètre, l'objet DataReader et d'autres objets liés à l'.
Vous pouvez utiliser à la suite d'appels à simplifier la connectivité à SQL Server à l'aide de SQL Server Fournisseur de Base de données.
Veuillez vous référer à l'article suivant pour plus de détails et d'exemples:
http://www.ijz.today/2016/09/net-core-10-connecting-sql-server.html
Que Joe Healy a mentionné dans son réponse DotNet Core 2.0, il est possible d'utiliser le Système.Les fonctionnalités de données.
Ajouter nugets:
config.json exemple:
Voici une application console exemple.
Dans ADO.NET de Base, je n'utilise PAS le Système.Les données.SqlClient mais j'utilise Microsoft.Les données.SqlClient.
Jusqu'à maintenant, je pourrais utiliser mon précédent codage!.