【发布时间】:2013-09-11 02:45:01
【问题描述】:
我在很多网站,特别是在 oracle 论坛中读到,Oracle 不正式支持 Entity Framework Code First 或 DbContext API。
话虽如此,我还在很多地方读到人们已经成功地使用 EF CodeFirst 和 Oracle 部署了项目。我遇到了很多问题,并且一直在调整代码以使其也可以与 SQL Server 一起使用。
一个似乎不起作用的函数是 DbSet.Find,您可以在其中将密钥作为参数传递并准确获取该记录。
使用 Find(如果我在同一个代码库上使用 sql server 就可以正常工作)会引发异常并出现以下错误:
ORA-00942: table or view does not exist
我阅读了this question 的相关信息,他们提到了套管,这不是我的情况,所以我无法解决。
奇怪的是,使用 DbSet.SingleOrDefault(x => x.Id == SomeId) 工作得很好,所以我很确定架构、表名和列的大小写是好的。
有没有人在使用DbContext的时候成功使用过Find?
请注意:我没有使用 EDMX,也无法使用它,我们必须继续使用 CodeFirst。
谢谢。
【问题讨论】:
标签: c# oracle entity-framework odp.net odac