我想对这个问题提出一些建议:我们有一个使用经典ADO.NET
数据访问的解决方案(它已经有 4 年以上的历史了)。数据访问体系结构已经建立在.NET 2.0.
我们的数据类是简单的类,例如,FooDataBaseObject
(名称实际上并不重要),它具有 CRUD 操作的默认实现。我们的属性标有自定义属性(保存必要的数据,例如表中相应列的名称等)。数据类也是如此(自定义属性用于指定表名等)。
实体之间的关系在特殊的 .xsd 和 .xml 文件中指定。表本身很少有外键和其他典型约束(我们实际上继承了这个表,客户禁止我们修改它们,因为它们仍然使用导入和导出引擎)。但我确信我能够说服人们重构数据库。
问题在于现有服务。有没有办法引入 EF 仍然可以使用旧的 ado.net 服务?我目前正在考虑使用EF Code First方法的想法,因为我不需要生成我的实体或继承某些特定的类等,而不是我将能够(我希望)DbContext
为它们构造一个并映射到现有的数据库。此外,可能还有一种方法可以为我们的旧数据类创建镜像类。说Customer
-> CustomerEntity
。CustomerEntity
将镜像 the 的所有必要属性,Customer
然后在DbContext
and中使用DbSet
,这样我们就可以CustomerEntity
在新服务中使用,也可以Customer
在旧服务中使用。
我想听听这种方法的潜在瓶颈以及这种可能性的可能性(这真的是真的吗?)或者其他一些建议等。谢谢!