0

EntityFrameworkについて質問があります。コードファーストのシナリオでは、住所を参照する人物クラスがあります。私のドメインでは、これをAddressクラスへの参照として使用します。私が見たEntityFrameworkのすべての例には、AddressIdフィールドも必要です。これは私がそこにあるべきではないと思うものであり、私のドメイン駆動モデルでは必要ありません。

EFがこれを必要とするのはなぜですか?それなしでできますか(NHibernateがこれを必要とするとは思わない)。

ありがとう

public class Person()
{
    public int Id {get;set;}
    public string Name {get;set;}
    public Address Address {get;set;}
    public int AddressId {get;set;} //Entity Framework seems to require this
}
4

2 に答える 2

1

外部キーは必要ありません。実際、外部キーのサポートはEF4で導入されました。通常、FKは便宜上そこにあります。多くの場合、FKは、IDがわかっている場合(保存されたデータベースへの1回のトリップ)、関連するエンティティをロードせずに関係を変更できるため、パフォーマンスの向上に役立ちます。

于 2012-10-21T19:07:18.170 に答える
0

IndependentAssociationとForeignKeyAssociation: Code First:Independent Associations vs. Foreign Key Associationsを読む必要があります か?

上記の質問に答えた同じ著者からの良い記事は、 foreign-key-vs-independent-associations-in-ef-4でも入手できます。

于 2012-10-22T11:28:59.397 に答える