2017-11-25 18 views
1

を持たずに外部キーを定義します。は、どのように私は以下のクラスを持っているナビゲーションプロパティ

会社はCompanyDetailを持つことができますが、必須ではありません。

予想されるデザインは、私がモデルを作成するとPKだけでなく、FK(会社テーブルには)

、私は次のエラーが表示されCompanyDetailとのcompany_idという名前のテーブルを持っている:

EntityType 'CompanyDetail' has no key defined. Define the key for this EntityType. CompanyDetails: EntityType: EntitySet 'CompanyDetails' is based on type 'CompanyDetail' that has no keys defined.

Fluent APIまたはData Annotationを使用して問題を解決する方法が必要です。

答えて

1

あなたが試すCompanyDetail

のために[キー]を定義する必要があり

public class Company 
{ 
    [Key] 
    public Guid Id { get; set; } 

    public virtual CompanyDetail CompanyDetail { get; set; } // This is optional 
} 

public class CompanyDetail 
{ 
    [Key] 
    public Guid Company_Id { get; set; } 

} 

... 
    modelBuilder.Entity<Company>() 
     .HasOptional<CompanyDetail>(u => u.CompanyDetail) 
関連する問題