2

私は簡単なシナリオを持っています:

  • 以下の DataSource プロジェクトへの dll 参照が追加された Web プロジェクト (C#)。
  • edmx ファイルを追加し、DbContext Generator で POCO を生成した別の DataSource プロジェクト (クラス ライブラリ)。

本当に、特別なことは何もありません。私が Entity Framework で見たすべての YouTube 教育ビデオは、単純なことをしていると思います。

私が発見したのは、EntityDataSource が機能しないということです。さまざまなエラー メッセージが表示されますが、それらが表示されているときのパターンが実際にはわかりません。


- 指定されたメタデータ ソースを読み込めません- アセンブリにEdmSchemaAttribute
が含まれているため、スキーマが無効で型を読み込めません... 名前と属性の両方による読み込みは許可されていません。

方法がわかりませんが、このエラーをなんとか回避できました。その場合、データソースとグリッドビューを使用して単純なページを実行しようとすると、CLR エラーが発生します (何もコーディングされていません)。

問題に追加して終了...同じ方法で別のDataSourceプロジェクトを参照しています。上記のエラーなしで、この EntityDataSource を完全に設定できます。しかし、[スキーマの更新] をクリックすると、「MyEntity の CLR 型が見つかりませんでした。

ここで何が問題なのですか。

ありがとう

4

1 に答える 1

0

EF 5.0 と WCF Data Services 5.2.0 を使用して、EdmSchemaAttribute エラー メッセージが表示されました。DbContextこれは派生クラスを使用するデータ サービスでしたが、DbContext派生クラスは一部の EDMX ファイルおよび EDMX ファイルから生成された ObjectContext ベースのコードと同じアセンブリにありました。

私にとっての修正は、コード ファーストの EF コードをモデル ファーストの EF コード (ObjectContext を使用し、[EdmSchema]属性を使用してコードを生成する) から分離することでした。コード ファーストのコードを別のアセンブリに移動することで、エラー メッセージが消え、正常に機能しています。

それが役立つことを願っています。

于 2013-02-17T07:59:41.447 に答える