100 を超える dables を含むデータベースがあります。EF モデルを 3 つの異なるモデルに分割することにしました。複数のモデルに表示されるテーブルがいくつかあります。EF 5.X DbContext Generator を使用した後、POCO クラスを取得しました。
このテンプレートは、繰り返されるクラス (複数のモデルに現れるもの) を生成しますが、名前空間は異なります。このいずれかを照会しようとした後、次のエラーが発生しました。
The mapping of CLR type to EDM type is ambiguous because multiple CLR types match the EDM type
この問題に直面した後、2 つの選択肢があると思います。
- CSDL、MSL、SSDL ファイルを編集して、エンティティの名前を変更します。この場合、コンテキスト名をプレフィックスとしてエンティティに追加します。
- EF 5.x DbContext Generator を編集して、生成される POCO クラスの名前を編集します。この場合、POCO クラスのプレフィックスとしてコンテキスト名も追加します。
私の質問は次のとおりです。どのオプションに従うべきですか? そして、選択したオプションに従って何をする必要がありますか。どの選択肢も有効でない場合、どうすればよいでしょうか?