更新了关系表,实体模型关系没有新字段

苦乐境

我最近在数据库中更新了一个关系表,以增加一个字段。当我从数据库更新实体模型时,此关系尚未更新为包含此字段。如何在模型中访问此属性?

例子:

People
---
PersonId - PKEY


PaymentPlans
---
PlanId - PKEY


PersonPaymentPlans
---
PersonId - FKEY
PlanId - FKEY
ConfidenceLevel - INT

在这种情况下,执行此实体查询时:

People
    .First(p => p.PersonId == pid)
    .Plans.First(p => p.PlanId == ppId)
    .ConfidenceLevel;

ConfidenceLevel不会显示为可访问的属性。如何访问此值,或者如何让我的EDMX公开此属性?

兰德随机

我猜您首先使用数据库,但是它缺少自动更新此类更改的功能,因此您必须“半手动”进行操作。

首先,打开您的EDMX文件,然后选择表示这两个表之间的关系的线并将其删除,然后从数据库中更新您的模型,您应该会得到几乎想要的结果。

我说这几乎是因为您在查询中提到了

.Plans.First(p => p.PlanId == ppId).ConfidenceLevel;

由于EF将包含两个以上的外键值,因此EF会生成您的PersonPaymentPlans表,因此,这将是不正确的。因此,您的查询将更像这样:

People
    .First(p => p.PersonId == pid)
    .PersonPaymentPlans.First(p => p.PlanId == ppId)
    .ConfidenceLevel;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在没有关系的两个或多个模型之间共享表 - 实体框架

Django多对多关系更新字段

更新ManyToMany关系以包括新字段

实体框架“从数据库更新模型,表成为关系

使用Laravel HasManyThrough关系获取模型ID和更新字段时出错

更新实体,但没有为@onetomany关系创建新记录的数据库表中已存在

Laravel 基于belongsTo 关系中的选择更新字段

MVC实体框架:表中多个记录的更新字段

Laravel-更新关系表上的字段

Linq用于带有实体框架的层次关系模型,过滤嵌套表

实体关系模型三元关系

实体之间具有一对多交叉关系的实体关系模型。这是错的吗?

更新模型中的新字段

实体框架中的模型关系

实体关系模型和关系模型之间有什么区别?

加入没有关系的表

有关创建实体关系模型的准则的担忧

有没有可能用phpMyadmin可视化我的Wordpress数据库的实体关系模型?

查找所有没有关系的实体

实体框架更新多对多关系的中间表

在yii中没有主键的关系mysql表搜索(调用非整数字段)

实体关系模型/关系模型和属性规范化

用关系更新/编辑实体

在多对多关系中没有项目的实体的JPQL

JPA - 没有关系的持久实体

dagster是否支持没有输出的实体之间的依赖关系?

EF中的多对多关系没有与实体的链接

Tortoise ORM for Python 没有返回实体的关系(Pyndantic,FastAPI)

教义2选择没有或少于关系的实体