我在一个以 .NET Framework 4.0 为目标的库项目中创建了一个 EF 模型。我只是将其降级为目标框架 3.5,因为将使用此库的项目之一目标为 3.5,目前无法升级。
将目标框架从 4 更改为 3.5 后,我收到多个类似于以下内容的 111 错误:
Error 111: Properties referred by the Dependent Role WfInstance must be a subset of the key of the EntityType xx.Entity.WfInstance referred to by the Dependent Role in the referential constraint for Relationship xx.Entity.FK_WfInstance_WfStatusType.
我从消息中得到的是,我的表 (WfInstance) 主键必须使用/包含引用表 (WfStatusType) 及其引用的任何其他表的 ID。但是,我不确定该怎么做。
如有任何帮助,我们将不胜感激。
TIA - 全科医生
最佳答案
当您使用向导为 .NET 4.0 库创建模型时,我认为您已经选中(或保留选中)在模型中包含外键。这是 .NET 4.0 中的新功能,不能降级到 .NET 3.5。您会很容易找到它,因为您的实体将包含外键列的属性。还有一些其他功能可以打破降级。无论如何,请相信我,如果您需要 .NET 3.5 的模型,最好的方法是删除您的 EDMX 并从头开始,因为手动修复损坏的模型将是非常糟糕和漫长的任务。
关于c# - Target Framework 从 4.0 更改为 3.5 破坏了 EF 模型。错误 111 : Referential constraint errors,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6430865/