gpt4 book ai didi

entity-framework - 如何将一个自定义实体映射到 Entity Framework 中的某些数据库表?

转载 作者:行者123 更新时间:2023-12-04 08:54:02 26 4
gpt4 key购买 nike

我的项目中有一个数据库第一个模型。 3 table Document , DocumentItemProduct从数据库中导入。
enter image description here
我想创建一个名为 Order 的新实体连接这三个数据库表的某些字段。我创建了你在第一张图片中看到的那个实体,并像你在第二张图片中看到的那样填充了它的表映射。
enter image description here
项目构建后,我收到以下错误:

Severity    Code    Description Project File    Line    Suppression State
Error Error 3025: Problem in mapping fragments starting at line 193:Must specify mapping for all key properties (Product.Id) of table Product. EFTest C:\Users\Me\documents\visual studio 2015\Projects\EFTest\EFTest\Data\EfTest.edmx 194
Error Error 3025: Problem in mapping fragments starting at line 186:Must specify mapping for all key properties (Document.Id) of table Document. EFTest C:\Users\Me\documents\visual studio 2015\Projects\EFTest\EFTest\Data\EfTest.edmx 187
Error Error 3024: Problem in mapping fragments starting at line 193:Must specify mapping for all key properties (Orders.Id) of the EntitySet Orders. EFTest C:\Users\Me\documents\visual studio 2015\Projects\EFTest\EFTest\Data\EfTest.edmx 194
Error Error 3024: Problem in mapping fragments starting at line 186:Must specify mapping for all key properties (Orders.Id) of the EntitySet Orders. EFTest C:\Users\Me\documents\visual studio 2015\Projects\EFTest\EFTest\Data\EfTest.edmx 187

我找不到问题的根源。我该如何解决这些错误?

最佳答案

错误告诉 您的项目中缺少一个外键!

考虑到你知道您不能简单地将数据库中的表添加到模型中,然后在模型中创建新关联。默认情况下,它使用必须映射到其数据库副本的独立关联(例如,该关系也必须存在于数据库中)。您必须将您的关系建模为 FK关联,但它只允许一对一和一对多的关联。 换句话说 ,当您在 EF4 中添加“在模型中包含外键列”选中的新表并且该表不包含任何外键关系时,然后您尝试添加关联,它将触发此错误。解决方法是到Define Constraints in an EF4 model that don’t exist in the database.

有时,当您可以从 EF 设计器中删除表并手动删除与该表相关的所有内容(在 XML 文件中),然后再次添加表并再次放置正确的映射时,我们会遇到不需要的冲突,这可能会导致此类问题。

关于entity-framework - 如何将一个自定义实体映射到 Entity Framework 中的某些数据库表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50445815/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com