1

Entity Framework v1アプリケーションに複数のデータベースのサポートを実装しました (「 Entity Framework による複数のデータベースのサポート」で説明されているように)。と を使用SQLSQL Compact databasesます。SQL db を使用して ou モデルを作成しssdl、comapct db 用に別のファイル ( OurModel.SQLCE.ssdl ) を用意しました。

事前に生成されたビューを使用することを決定するまで、すべてがうまくいきました。でビューを生成するとOurModel.ssdl、SQL データベースではすべてが機能しますが、SQL CE データベースでは機能しません。次の例外が発生します。

System.Data.EntityCommandCompilationException: コマンド定義の準備中にエラーが発生しました。詳細については、内部例外を参照してください。---> System.Data.MappingException: EntityContainer 'OurModelEntities' のマッピングおよびメタデータ情報が、事前に生成されたビューの作成に使用された情報と一致しなくなりました。

SQL および SQL CE データベース用に事前生成されたビューを使用するかturn-off、アプリケーションが SQl CE データベースを使用している場合は事前生成されたビューを使用したいと考えています。

だから、私の質問は: Entity Framework で複数のデータベースを使用するときに、事前に生成されたビューを使用する方法はありますか?

4

1 に答える 1

1

これがあなたの問題に当てはまるかどうかはわかりません。しかし、同じエラー メッセージが表示され、それが原因であることに気付きました。モデル クラスの 1 つを変更しましたが、そのための移行を追加していません。

だから私がしたことは、

パッケージマネージャーコンソールで、以下のコマンドを指定しました

add-migration "Migration###"

次にupdate-databaseコマンドを実行しました

そしてそれはトリックをしました。

于 2014-08-12T18:44:37.743 に答える