我有两个需要建立关系的实体。我已经将模型与我的ApplicationDbContext
. 但是,当我尝试对其运行查询以从相关实体获取数据时,我收到此错误。
无法确定“Fixture.Result”和“Result.Fixture”之间的一对一关系的从属方。要识别关系的依赖方,请配置外键属性
我怎样才能让它发挥作用?
我需要可选地Fixture
有一个,但必须有一个。Result
Result
Fixture
夹具.cs
public class Fixture
{
public long Id { get; set; }
public DateTime Date { get; set; }
public League League { get; set; }
public Season Season { get; set; }
public Result Result { get; set; }
//Properties omitted for brevity
}
结果.cs
public class Result
{
public long Id { get; set; }
public League League { get; set; }
public SeasonDivision Division { get; set; }
public SeasonCalendarDate SeasonCalendarDate { get; set; }
public Fixture Fixture { get; set; }
//Properties omotted for brevity
}
应用程序DbContext.cs
builder.Entity<Result>()
.HasOne(i => i.Fixture);
按如下方式配置您的模型:
在大多数情况下,实体框架可以自动检测和配置一对一关系,而无需使用 Fluent API 进行显式配置。
考虑以下表示一对一关系的类:
在大多数情况下,这种 Fluent API 配置是可选的,因为实体框架可以推断这种关系。但是,它对于自定义或遵守特定的命名约定很有用。
执行预先加载并检索具有关联结果的装置的示例: