2009-07-16 22 views
0

私は非常に非標準ビルドのEntity Frameworkを実行しています。私はEdmGen2を使用してdbからedmxを生成し、コンポーネントcsdl、msdl、およびssdlファイルをそれぞれのファイルに分割しました。接続文字列のメタデータは次のようになります。エンティティフレームワーク:スキーマ内の各型名は一意である必要があります

C:\ Downloads \ EDM | filename.csdl | filename.msdl |

filename.ssdl

私は、接続を開こうとするが、何もしないユニットテストを持っている、と私は(他のチャフの多くと一緒に)このエラーが出る:

「スキーマ内の各タイプの名前でなければなりませんユニーク "

私は手動でcsdlに入り、名前に" 1 "を追加すると、最終的にはmsdlファイルに移動し、というメッセージが返ってきますです。明らかに、何らかの形でオープンオペレーションでスキーマが二重定義されている...

  1. テストまたは従属プロジェクトでは、edmxへの参照はありません。実際には、実行時にこれらすべてのものを動的に生成するプロジェクトであるため、それらの参照はありません。
  2. 私はJulie Lehrman/Do not Be Iffyの投稿を見てきましたが、そのような問題はないようです。

TIA ...

+0

EdmGen2はここに発見された: http://code.msdn.microsoft.com/EdmGen2 私は生成され、同じプロジェクトを取ると、スタンドアロンのクラスのプロジェクト内のそれに標準の参照を作成した場合、出力がうまく動作します。 –

答えて

0

は、メタデータのワークスペースが明らかにハード(理にかなって)3つのファイルを検索するようにコーディングされている...それを考え出した、と私は、メタデータタグ内のディレクトリ指定を削除する場合、それはすべて働き始めた。私のメタデータ属性は次のようになります:

C:\ Downloads \ filename.csdl | C:\ Downloads \ filename.msdl | C:\ Downloads \ filename.ssdl

だから私はどちらか、または命題だと思う:ファイルが置かれているディレクトリ、または個々のファイルの場所を指定する。

関連する問題