gpt4 book ai didi

entity-framework - Entity Framework 中是否可以有反向导航属性?

转载 作者:行者123 更新时间:2023-12-02 21:56:13 25 4
gpt4 key购买 nike

我有这两个实体,我向其中添加了标记的属性,这给了我一个错误(错误是:无法确定类型之间关联的主要端...)

public class Lot
{
[Key]
public int Id { get; set; }

public int Vehicle_Id { get; set; }

[ForeignKey("Vehicle_Id")]
public virtual Vehicle Vehicle { get; set; }
}

public class Vehicle
{
public int Id { get; set; }
public virtual Lot Lot { get; set; } // * This is the property that I added
}

一辆车可能属于也可能不属于一个批处理,但一个批处理总是有 1 辆车。

我需要车辆类中这两个实体之间的反向导航属性,这样如果有一个批处理与车辆关联,那么我可以从该车辆访问该批处理。

这是否可能,如果可以,我该如何做而不出现任何错误?

最佳答案

不, Entity Framework 不支持此功能。 Entity Framework 需要零对一/一对一关系的表来共享主键。您有单独的批处理 ID 和车辆 ID,因此最好将其映射为

public class Vehicle
{
public int Id { get; set; }
public virtual ICollection<Lot> Lots { get; set; }
}

然后访问vehicle.Lots.SingleOrDefault()。这让 EF 将其视为一对多关系,但知道“多”永远不会多于一个。

关于entity-framework - Entity Framework 中是否可以有反向导航属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17746187/

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