C#中.NET 7.0不再支持ADO.NET,.NET Framwork依旧支持

目录

[一、.NET 7.0框架下任何应用不再支持ADO.NET](#一、.NET 7.0框架下任何应用不再支持ADO.NET)

[二、.NET Framwork框架下Windows窗体应用支持ADO.NET](#二、.NET Framwork框架下Windows窗体应用支持ADO.NET)

[三、.NET 7.0不支持ADO.NET的真正原因](#三、.NET 7.0不支持ADO.NET的真正原因)


经过一阵折腾,终于可以确证C#中.NET框架不再支持用户通过ADO.NET的实体框架模型访问数据库,无论是.NET 7.0的控制台应用还是Windows窗体应用都不再支持ADO.NET。或者说,除了.NET Framwork之外的控制台应用还是Windows应用都不再支持ADO.NET

一、.NET 7.0框架下任何应用不再支持ADO.NET

.NET 7.0框架下控制台应用不再支持ADO.NET访问数据库。

.NET 7.0框架下控制台Windows窗体应用不再支持ADO.NET访问数据库。

现象:"项目的目标框架不包含实体框架运行时程序集。请查春项目属性页中的目标框架信息。"即使通过NuGet 新增安装了如截图内的程序包,这种现象仍然存在。

二、.NET Framwork框架下Windows窗体应用支持ADO.NET

.NET Framwork 4.8框架下控制台Windows窗体应用支持ADO.NET访问数据库。并且,也不需要NuGet安装那些程序包。

数据库已经在SSMS中成功连接,连接方法在作者此前的文章中有所涉及,不再这里重复。

示例程序生成效果在作者此前的文章中有所涉及,不再这里重复。

三、.NET 7.0不支持ADO.NET的真正原因

事实上,自.NET 5.0(这是.NET的第一个版本)诞生之日起,就从来没有支持过ADO.NET。经过查阅,微软关于ADO.NET是这样说的:"ADO.NET 是一组向 .NET Framework 程序员公开数据访问服务的类。"参考文献:

ADO.NET | Microsoft Learn https://learn.microsoft.com/zh-cn/dotnet/framework/data/adonet/

所以,希望在.NET上通过ADO.NET实体模型框架,这个简单易用的途经访问数据库的网友,不要再满世界地寻找解决方案了,因为根本就不存在。

.NET虽然不支持通过ADO.NET访问数据库,但其仍然支持使用EF,只是需要用户自己编写程序,建立模型,并通过建立的模型访问数据库。比如:.NET 7.0虽然不支持ADO.NET但是却支持EF6.0、EF5.0。关于在.NET 7.0框架下的控制台应用或窗体应用中,自己编写框架模型并通过模型访问数据库的方法,请留意作者的后续文章。

相关推荐
小羊没烦恼!2 天前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
小羊没烦恼!2 天前
初探性能优化——2个月到4小时的性能提升
java·开发语言·windows·算法·c#
神仙别闹2 天前
基于C#+MySQL实现(WinForm)个人聊天室软件
c#
伞伞悦读2 天前
【第38期】Python 模块与包详解:import、from、模块搜索路径、包结构和 __init__
开发语言·python
C语言小火车2 天前
C/C++ 为什么需要编译器?
开发语言·c++
霍霍的袁2 天前
【C++】map 和 set 的使用 | 从用法到底层
开发语言·c++·学习·visual studio
kybs19912 天前
全球灾害数据分析可视化 毕业设计-附源码66794
vue.js·spring boot·mysql·安全·django·c#·asp.net
孙启超2 天前
【AI开发之Rust】第 11 课:智能指针与内部可变性
开发语言·后端·rust
此生决int2 天前
深入理解C++系列(20)——C++11(下)
开发语言·c++
CoderYanger2 天前
A.每日一题:835. 图像重叠
java·开发语言·程序人生·leetcode·面试·职场和发展·学习方法