0

最初にエンティティ フレームワーク 4.3 モデルを使用していますが、参照制約と共に 1 対 0 対 1 の関連付けが許可されない理由がわかりません。

主な問題が 2 つあります。参照整合性を (手動の介入なしで) 強制することはできず、遅延読み込みが機能していないようです... 1 対多の関連付けはすべて問題ありません。

基本的に、Loans と Contracts の 2 つのテーブルがあります。Contracts テーブルには、LoanId のスカラー フィールドがあります。

ローンが提出されるまで、契約データはありません。契約データのサイズのために、すべてを同じテーブルに配置しないことにしました。すなわち。実際に必要でない限り、データベースから契約データを取得したくありません。

私は周りを検索しましたが、私の質問に明確に答えるモデルの最初の情報を見つけることができないようです. 私の問題を理解し、明確にするのに役立つ情報があれば、大歓迎です。

よろしくクレイグ

4

1 に答える 1

2

LoanIdフィールドは契約テーブルの主キーではないと思います。このような場合、EF はサポートしていないため、このような 1 対 1 の関係を持つことはできません。LoanIdテーブルにフィールドを作成する場合Contracts、1 対 1 の関係を強制する唯一の方法は、そのフィールドに一意の制約を追加することです。EF は現在、一意のキー (主キーを除く) をサポートしていないため、1 対 1 の関係を作成する唯一の方法は、主キー ( Loan.Id<-> Contract.Id) 間の関係を作成することです。これに従わないと、デザイナーでエラーが発生します。

于 2012-07-02T10:49:04.303 に答える