asp.net – ADO.NET在.NET内核可能吗?

前端之家收集整理的这篇文章主要介绍了asp.net – ADO.NET在.NET内核可能吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想使用最新版本的ASP.NET Core,因为我想要创建一组Web API.但是,我发现的教程主要集中在实体框架上.我不能使用它,因为我已经有一个“遗留”数据库,所以Code-First方法不是一个选项.

我的想法是使用ADO.NET连接到我的数据库,但是我不知道System.Data.sqlClient是否在ASP.NET Core项目中可用.我已经发现,当我使用.NET Framework项目模板时可以使用它,但它仍然可以在.NET Core项目中使用?

解决方法

现有的sqlConnection和其他相关连接仍然存在于System.Data.sqlClient命名空间中,并应使用完整框架或.NET Core按预期方式工作.

您只需要添加适当的引用和使用语句来包括它,例如通过System.Data.sqlClient命名空间,如下所示在project.json文件中:

然后通过您习惯的语法调用它:

using(var connection = new sqlConnection("{your-connection-string}"))
{
      // Do work here
}

所以只要你有一个有效的连接字符串连接到你现有的旧数据库,你应该是好的.

关于ORM的使用

I also found that some people are using Dapper,a Micro-ORM
replacement for Entity Framework,apparenty more flexible. It is there
any advantages of using it instead ADO.NET?

这些ORM(对象关系映射器)是方便的,通常是强大的工具,可以更轻松地将现有的数据库数据映射到特定的类和对象,这可以使它们更易于使用(而不是迭代数据读取器,解析每个行和手动构建每个对象).

性能而言,它最终取决于您将如何处理查询. ADO.NET通常是最快的,因为它与数据库的裸机连接,然而在某些情况下,Dapper实际上可以击败它.实体框架虽然非常有用,但总体上落后于性能,只是因为它是一个如此大的ORM.

再次 – 它最终取决于你在做什么,但都是可行的选择.

猜你在找的asp.Net相关文章