2011-11-23 8 views
0

現時点で私のモデルはすべてId(主キー)を持っていますが、他のモデルへの参照は数値IDを使用せずに行われます。私は期待しているようにEFがこの仕事をするために魔法を供給することを期待しています。現時点でそうであるようです。しかし、私は明示的な整数の外部キーを持つ多くの質問と例を見る。私は何かを見逃しているか、フレームワークからあまりにも多くを期待していますか?または、これはどのように使用するように設計されていますか?Entity Framework 4.1.Codeファースト - モデルでの外部キーの明示的な使用

答えて

2

外部キーを明示的に宣言する必要はありません。デフォルトでは、EFコードは最初に、オブジェクト参照と1対1の関係を作成し、オブジェクト参照のコレクションと1対多の関係を作成します。必要なのはプライマリIDだけです。

外部キーを明示的に宣言すると、特定のフィールドにマップする必要がある場合や、関係を含めずに外部キーを使用したい場合に便利です。私のプロジェクトでは、私もDTOとして私のエンティティ(あなたのケースのモデル)を脅かす。したがって、関係は存在したくない。それはすべてが本当に必要条件に依存し、EFコードは最初のあなたが必要なものを実現するの細かいツールセットを提供します

var student = service.GetStudent(); 
var class = service.GetClassById(student.ClassId); 

:私のような他のデータをロードするために、明示的な外部キーを使用します。

+0

ありがとう、それは私が疑ったものでした。 – Tom

関連する問題