【问题标题】:Entity Framework Code First and Database First Bug/Conflict实体框架代码优先和数据库优先错误/冲突
【发布时间】:2010-12-19 21:22:26
【问题描述】:

我在 VS 2010 解决方案中有两个项目:Data 和 DataForm。在我的数据项目中,我有相同数据模型的代码优先和数据库优先版本(例如 DataPoco 和 DataDb)。这些类在它们内部具有完全相同的实体名称,等等……这两个版本都在各自的命名空间中:DataDb 在 Data 中,DataPoco 在 Data.Poco 中。

在我的 DataForm 项目中,我有以下代码:

DataPoco context = new DataPoco(); //Data.Poco.DataPoco
foreach(var u in context.Urls)     //Data.Poco.Url
{
    //do stuff with u.
}

枚举context.Urls 时出现以下错误(并且由于延迟加载而加载):

找不到“Data.Url”的概念模型类型。

为什么我在 OTHER 版本中收到有关实体的错误(例如,我在枚举 Data.Poco.Url 时如何收到有关 Data.Url 的错误)?代码优先是否有一些东西使它在另一个命名空间但在同一个项目中获取数据库优先实体类?这是 Code First 中的错误还是我的错?

【问题讨论】:

    标签: c# entity-framework exception code-first ef-code-first


    【解决方案1】:

    实体框架不使用命名空间作为名称的一部分 - 实体名称本身必须是唯一的。

    【讨论】:

    • 哇——大吃一惊!好吧,在您回答之后,我进行了更多搜索,因为我对要查找的内容有了更好的了解,并找到了另一个 Q/A - stackoverflow.com/questions/3521497/… 。感谢您的帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-06
    • 2014-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多