gpt4 book ai didi

c# - 从 Entity Framework 中的 POJO 类中删除导航属性

转载 作者:太空狗 更新时间:2023-10-29 23:47:27 25 4
gpt4 key购买 nike

我正在使用生成的 POCO 类和 Entity Framework 。

为了使代码不那么复杂,我试图从代码中删除所有导航属性,同时仍将外键约束保留在数据库中(导航属性弊大于利)。

如果我从 POCO 类中手动删除它们,我会收到以下错误

The entity type UserEntity is not part of the model for the current context

如果我尝试从 .edmx 文件中删除它们,我会收到以下错误:

Error 3 Error 3015: Problem in mapping fragments starting at lines 479, 562:Foreign key constraint 'fk_StorageContracts_User1' from table StorageContract (OwnerUserID) to table User (ID):: Insufficient mapping: Foreign key must be mapped to some AssociationSet or EntitySets participating in a foreign key association on the conceptual side.

有没有办法在不删除相应 FK 的情况下从 POCO 类中删除导航属性?

最佳答案

我知道这是旧的,但是,由于仍然没有答案,我想我会试一试:

我仍在 EF 4.0 中工作,但是,按照您提到的示例,您有一个 xxxModel.tt。如果您愿意对其进行调整,您可以找到它生成导航属性的位置并将它们更改为简单的自动属性。我有一个类似的项目,我是这样生成它们的:

public List<NavDataX> NavDataXs
{
get; set;
}

现在,它们仍然存在,但在您明确设置它们之前它们都是空的。这样做,我没有弄乱 EDMX,也没有遇到你提到的两个错误。

关于c# - 从 Entity Framework 中的 POJO 类中删除导航属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10450257/

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