【问题标题】:Issue with AssociationSet in EF when changing target from .NET 4.0 to 3.5将目标从 .NET 4.0 更改为 3.5 时,EF 中的 AssociationSet 出现问题
【发布时间】:2012-03-27 15:16:24
【问题描述】:

我针对使用 EF.NET 4 Framework 开发了一个 Repository 组件。在我的 EF 中,我使用 Database 中已经存在的表。

在数据库中,我有 4 个表代表 entities3 个关联表(实体之间的关系都是多对多的)

但是,这些数据库级别的表彼此之间没有任何关系。由于我无权修改数据库,我直接在 EF 中添加了关系。我为它们命名,指定了导航属性,然后成功编译并测试了项目。

现在我必须使用 .NET 3.5Web 应用程序 中引用这个 Repository 项目。因此,Repository 项目也必须引用 .NET 3.5。

我正确地将连接字符串从 Repository 项目复制到 web.config,我编译了项目并且...它给了我一个编译错误,说有

"EntitySet/AssociationSet 之间没有指定映射"

然后列出表/实体之间的关系。

我猜这个错误是因为在数据库级别没有关联。如何在不重写所有代码的情况下解决这个问题?

【问题讨论】:

    标签: entity-framework associations asp.net-3.5 asp.net-4.0


    【解决方案1】:

    您不能在 EF 3.5 期间使用 EF 4 EDMX。但是,您可以在 EF 4 中使用 EF 3.5 EDMX,但 EF 4 设计者不会理解它。

    一种可能的解决方法是让您的 EF 4 项目成为进程外服务器。

    【讨论】:

    • 谢谢。删除 edmx,将项目设置为 3.5 并再次创建 edmx 怎么样?它会完成这项工作吗?
    • 它工作但现在它给了我一个关于闭包的错误。看来 Any() 方法有点问题
    猜你喜欢
    • 1970-01-01
    • 2014-10-09
    • 1970-01-01
    • 1970-01-01
    • 2013-03-06
    • 1970-01-01
    • 1970-01-01
    • 2011-04-12
    • 1970-01-01
    相关资源
    最近更新 更多