加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

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

发布时间:2020-12-15 23:20:44 所属栏目:asp.Net 来源:网络整理
导读:我想使用最新版本的ASP.NET Core,因为我想要创建一组Web API.但是,我发现的教程主要集中在实体框架上.我不能使用它,因为我已经有一个“遗留”数据库,所以Code-First方法不是一个选项. 我的想法是使用ADO.NET连接到我的数据库,但是我不知道System.Data.SqlCli
我想使用最新版本的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.

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读