2010-11-28 21 views
17

エンティティフレームワークを使用していますが、データベーステーブルから作成されたエンティティとデータベースビューから作成されたエンティティを関連付けようとしています。 Entity Frameworkはデータベーステーブルとビューの関係を自動的に推測できないため、エンティティデザイナを使用してエンティティ間の「関連付け」を構築しています。ただし、外部キーがnullalbe型の場合、次のエラーが発生します。エンティティフレームワーク:エンティティをnull可能なフィールドに関連付ける問題

エラー113:Multiplicityは、 'UsersView'という関係の 'Company'ロールでは無効です。 依存ロールのすべてのプロパティはnull可能であるため、プリンシパルロールの多重度は「0..1」でなければなりません。

私のシナリオでは、CompanyViewの外部キーがnullに設定されています(ユーザーが会社を所有していない可能性があります)。 null可能な外部キーとの関連付けを作成することは、Linq 2 SQLでは決して問題にはなりませんでした。誰も私がEntity Frameworkでこの問題を回避する方法を知っていますか?

ありがとうございます。

答えて

24

アソシエーションを選択し、プロパティペインの[多重度]設定を0..1に設定する必要があると思います。それはエラーを解決するはずです。

+0

ありがとうございました。あなたの答えは私の問題を解決しました。 –

+0

+1、Thanks Dave。あなたの答えも私の問題を解決した:) – Homam

3

Visual Studio 2010でモデルデザイナーで手動で同じエラーが発生したため、このエラーが発生しました。データベースでnullフィールドが許可されていませんでしたが、何らかの理由でデザイナーでNullableプロパティそのフィールドはTrueではなく(None)に設定されていました。なぜデザイナーが不平を言っているのか分かりませんでした。私は手動でフィールドのNullableプロパティを変更した後、エラーなしで関連付けを作成しようとしていました。

私はこれが元の質問に答えるのではないことを知っていますが、この記事は同じエラーを出していた私の問題を解決しようとしています。

+0

ありがとう!あなたは私の一日を救った! – user3009269

関連する問題