2

属性だけを使用してこれを達成することは可能ですか?

Class2 テーブルには、Id の独自の主キーと、Class1.Id の外部キーである Class2Id という列が必要です。

public class Class1
{
    public virtual int Id { get; set; }
    public virtual Class2 Class2 { get; set; }
}

public class Class2
{
    public virtual int Id { get; set; }
    public virtual Class1 Class1 { get; set; }        
}

以下を使用して流暢なマッピングを使用して動作させることができます。

modelBuilder.Entity<Class1>()
  .HasRequired(x => x.Class2)
  .WithRequiredPrincipal(x => x.Class1)
  .Map(x => x.MapKey("Class1Id"));
4

1 に答える 1

1

JuliaLermanによる「ProgrammingEntityFramework:Code First」の本によると、それは可能であるはずです。構成は、オプションの1-1関係であるか、必須の1-1関係であるかによって異なります。それはを使用して行われます

[鍵]

[外部キー]

従属端に適用されるデータ注釈。この本には次の例が含まれています。

public class PersonPhoto
{
  [Key]
  [ForeignKey("PhotoOf")]
  public int PersonId { get; set; }
  public byte[] Photo { get; set; }
  public string Caption { get; set; }
}
于 2013-01-09T22:25:39.270 に答える