我正在将应用程序的持久存储机制从 SQL Compact 移植到 Oracle。
当前实施
该应用程序实现了实体框架 5 (EF),但它的耦合非常紧密:(a) EF 和控制器之间没有服务层, (b)IRepository
EF 和 SQL Compact 之间没有-style 抽象。
C# 模型是简单的 POCO,但具有丰富的数据注释,并使用“代码优先”样式生成 DB 模式。
问题(甲骨文)
我必须使用 Oracle 的标准 ODP.Net 提供程序。提供程序支持 EF,但不支持“代码优先”方法,仅支持“模型优先”。
预期解决方案
我试图找到一种方法来保留与控制器紧密耦合的 EF 实现以及模型类注释的丰富性,同时使用它们来构建 Oracle 可以吞下的“模型优先”样式的 EDMX 文件。本质上,我正在寻找一种模仿“代码优先”的方法。
我希望它就像将我的 C# 对象拖到 EDMX 文件上一样简单,但似乎还有很多事情要做。
问题
如何使用已经存在的 C# 模型构建 .EDMX 文件?如果不可能,实现这一目标的下一个最佳解决方案是什么?