0

エンティティ フレームワークを使用して、2 つの異なるデータベースをソリューションにロードした状況があります。どちらのデータベースにも、TBL_CONTACT というテーブルがあります。ほとんどのフィールドは同じですが、わずかに異なるフィールドがいくつかあります。

エンティティを生成すると、TBL_CONTACT のコピーが 1 つ作成され、最後に生成したエンティティに基づいてフィールドが作成されることに気付きました。

私が読んだことから、問題は接続文字列が res://* の後にワイルドカードを使用していることです。接続を明示的に記述し、while カードを使用しないようにするには、どのような種類の情報を配置する必要がありますか。それは可能ですか?

間違った領域を見ている場合、エンティティが重複せず、それぞれに独自の TBL_Contact があることを確認する別の方法はありますか?

<add name="ACTWhite2Entities2" connectionString="metadata=
     res://*/White2.csdl|
     res://*/White2.ssdl|
     res://*/White2.msl;
4

1 に答える 1

0

Entity Framework は、データベース テーブルを C# クラスにマップします。ただし、同じ名前のテーブルが 2 つある場合、C# は同じ名前の 2 つのクラスを認識できないため、C# では 2 つの TBL_Contact が表示されません。

これを解決し、C# でテーブルを区別するために、エンティティ クラスに異なる名前を付けることができます。デザイナーでエンティティ クラスをクリックし、プロパティ ウィンドウで名前を変更するだけです。例: edmx "TBL_Contact" を保持し、別の "TBL_Contact_New" に保持する

于 2013-10-28T19:27:32.510 に答える