1

我们已经使用存储库模式构建了应用程序的数据访问层,并且我们正在使用托管 ODP.net 提供程序来处理 oracle 数据。在尝试使实体框架代码优先与 oracle 一起使用时,我们遇到了一些问题。

public class Repository<TObject>
            where TObject : class
{        
protected DbSet<TObject> DbSet
        {
            get
            {
                return Context.Set<TObject>();
            }
        }

public virtual TObject Create(TObject TObject)
        {
            var newEntry = DbSet.Add(TObject);

             return newEntry;
        }

...
}

创建函数实际上并不是在数据库中创建一个条目。获取功能虽然工作正常。

关于这个问题的任何建议..?或者,任何人都可以建议使用实体框架代码优先遵循 ODP 是否是一种好方法。

4

1 回答 1

1

ODP.NET 托管数据提供程序不支持使用实体框架进行代码优先开发。从 oracle 客户端目录下的 odp.net/doc 中的 readme.txt 中:

“7. ODP.NET 11.2.0.3 不支持 Code First 也不支持 DbContext API。”

您必须使用模型优先或数据库优先的方法。

于 2013-06-13T21:24:31.963 回答