1

私は、ASP.NET Entity Framework 4.3 Code-First アプリケーションに取り組んできました。このアプリケーションは、データベースの重要な部分のモデルを管理します。このデータベースは他の複数のアプリケーション (一部は ef を使用していないため、モデルをインポートできない) で使用されるため、私のアプリケーションでベース データベースを作成するというアイデアがありました。この後、DBA は必要に応じてアプリケーションで使用されていない他のフィールドとテーブルを追加できます。

アプリケーションでモデルに変更を実装すると、問題が発生します。私たちのアイデアは、EF 4.3 の新しい移行機能を使用してスクリプトを作成し (-script 機能)、ローカル マシンの開発データベース (SQLCompact) を指し、実際の開発データベース (MS SQL 2008 ) 他のすべてのアプリケーションが使用します。

ただし、テストを開始したとき(SQLサーバーを指している)、アプリケーションが外部キー関係を読み取ることができず、これらの列が存在しないというエラーが発生したため、問題が発生していました。これは、SQL Compact と SQL Server の変換 (EF から SQL) の違いが原因なのか、それとも他の問題が原因なのか疑問に思っています。

このような 1 DB の複数アプリ環境で EF の移行を行う必要はありますか? すべての移行を SQL Server に対して直接実行する必要がありますか? 使用すべきまったく異なる変更戦略はありますか? ヘルプやガイダンスをいただければ幸いです。

4

1 に答える 1

1

コンパクトを使用する代わりに、SQL Server Express をローカルにインストールしてみてください。これにより、コンパクトと標準の間にある可能性のある違いが取り除かれます。

于 2012-02-29T15:34:47.363 に答える