かなり大きなプロジェクトのスクリプトを作成中です。プロジェクトの 1 つは、エンティティ フレームワーク モデルをライブラリにコンパイルする必要があります。ビルド サーバーの動作方法により、開発者やプロジェクト ファイルに影響を与えることなく、さまざまな展開シナリオを管理するために、すべてのビルドが手作業で作成されます。
Visual Studio によって生成されたプロジェクト ファイルを使用せずに、MSBuild タスクを使用して EF モデルを生成する方法はありますか? 現在、実際のアセンブリは CSC タスクを使用してコンパイルされますが、コンパイルされたアセンブリに EF モデルが含まれていないため、実際に展開されたアプリケーションは失敗します。
モデルを生成し、アセンブリに埋め込むために必要なリソースを作成するためにターゲットまたはビルド タスクを使用できるポインターはありますか?
ご注意ください
プロジェクトは Visual Studio で正常にコンパイルされますが、展開時にプロジェクトにさまざまな変更を加える必要があるため、ビルド サーバーでプロジェクト ファイルを使用することはできません。これは、外部のカスタム ビルド スクリプトによって制御されます。開発チームが管理します。これはいくつかのプロジェクトでうまく機能していますが、この特定のシナリオでは EF モデルが頭痛の種になっています。
アップデート
現在のソリューションは理想的ではありませんが、機能します。プロジェクト ファイルは、EF モデル リソースを新しいリリース ビルドのプロジェクト内のフォルダーにコピーするように変更されており、ソース管理にチェックインされます。ビルド スクリプトがサーバー上で実行されると、EF モデルがアセンブリに埋め込まれます。これは、現時点で実行可能な回避策のようです。