1

TSQLにデータベースがあり、.NET 3.5 の ADO.NET Entity Frameworkを使用して一致するエンティティを作成しています。

データベースでは関係はモデル化されていませんが、関係に含まれる各テーブルには、別のテーブルの主キーへの外部キーを表すフィールドがあります。

たとえば、次のようにします ( aProductはカテゴリを 1 つだけ持つことができると仮定します):

Product ( ProdId(PK), ProdName, CatId(FK))

Category (CatId(PK), CatName)

もちろん、この方法では参照整合性の制約はありません。

私のアプリケーションでは、データベースから EF エンティティを生成し、リレーションシップとそのマッピングを手動で追加します。1 対多の関係を除いて、すべてがスムーズに進みます。

多対多の関係に指定されたマッピング(関連付けテーブルを介して) は、 1対多の関係に指定されたもので、いかなる種類のエラーも発生しません。

エラー 3007: フラグメントのマッピングの問題: 列 [foreign_key] が両方のフラグメントで異なる概念的なサイド プロパティにマッピングされています。

マッピングを確認し、カーディナリティ方向を変更しましたが、それでも機能しません。

外部キーを削除する必要があることをインターネットで読みましたが、データベース内の値をどのようにマッピングできますか? 他の解決策はありますか?

重要: .NET 4.0 を使用できません。.NET 3.5 を使用する必要があります。

4

0 に答える 0