EF5 Fluent API一对一无导航器

本文关键字:导航 一对一 Fluent API EF5 | 更新日期: 2023-09-27 18:00:11

在Fluent API EF5中,是否可以通过Join表配置一对一关系(如果是个好主意,请不要确定)?我不需要从右到左的导航,只需要从左到右的导航。

我想做的是类似的事情

Table A1
TableA1_ID  //Key
RankValue   //int

Table A1_Rank (join table)
TableA1_ID
RankId
Table Rank
RankId
Value

POCO

public class A1 
{
    public int Id { get; set; }
    public decimal RankValue { get; set; }
    public virtual Rank Rank { get; set; }
}
public class Rank
{
    public int RankId { get; set; }
    public decimal Value { get, set; }
    public decimal Hits { get; set; }
}

A1.RankValue是我需要在存储库中计算的字段,不是来自数据库,使用Rank.Value和Rank.Hits(而Rank.Value显然包含当前排名值)。

我在A1配置中尝试过,但这会创建一个从等级到A1的FK,这不是我需要的。

  HasRequired(e => e.Rank)
    .WithRequiredPrincipal()
    .WillCascadeOnDelete(true);

EF5 Fluent API一对一无导航器

我解决了将RankId列添加到A1的问题。