升级EF5至EF6:是否需移除System.Data及System.Data.Common?
EF5升级EF6:ADO.NET基础类型的处理方案
- 你完全可以继续使用
System.Data和System.Data.Common命名空间下的DbException、DataException、DbCommand、IDbDataParameter、DbType、IDbCommand这些类型,无需替换。 - 微软指南中提到的「
System.Data.*下的所有类型移至System.Data.Entity.Core.*」规则,仅针对Entity Framework专属的类型(比如System.Data.EntityState、System.Data.EntityValidationException这类EF特有的API),并不覆盖通用的ADO.NET基础组件。 - 这些ADO.NET类型属于.NET框架的核心数据模块,不属于EF专属程序集范畴,所以升级过程中保持原有命名空间引用即可,不会和EF6的升级要求冲突。
- 你只需要严格遵循指南中移除
System.Data.Entity.dll引用的要求,同时将EF专属的类型(比如原System.Data.EntityClient下的EF特定连接类)迁移到System.Data.Entity.Core.EntityClient即可,无需改动通用ADO.NET代码。
内容的提问来源于stack exchange,提问作者Hakoo Desai
相关产品推荐
相关产品推荐

