1

私のソリューションでは、外部コマンドラインコンパイラを使用していくつかのファイルをコンパイルし、出力(csファイル)をC#コンパイラの入力に渡す必要があるため、結果のアセンブリにビルドされます。この課題を達成するためのアプローチを提案する。カスタムビルドVS2010

答えて

1

私はこれまで同じ問題を抱えています。簡単にするには、プロジェクトに出力ファイルを組み込み、ビルド前のイベントコマンドライン設定からジェネレータを呼び出します。このテクニックには多くの問題があります。統合されたソース管理に大きな影響を与えます。また、ジェネレータが動的にファイルを作成する場合、動作しません。これを回避する方法がありますが、変更を上書きするようにファイルを上書きする前にジェネレータのファイルを比較し、ファイルを既知の名前ファイルを持つ単一の.csファイルに連結します。これらはどれも楽しいものではありません。

可能であれば、これにはT4を使用することをお勧めします。あなたは外部発電機があなたのものかどうかは言わないが、もしそれが変わるのは難しいはずはない。それは、T4を外部接続されたツールよりもはるかにクリーンで、より明確で、より簡単に維持することができます。

+0

MSBuildでコンパイルするとT4が動作しますか? – user536232

+0

できます。http://msdn.microsoft.com/en-us/library/ee847423.aspx – Paul

1

プロジェクト - >設定 - >イベントのビルド - >ビルド前イベントを使用してCSファイルを生成し、CSファイルがプロジェクトに含まれていることを確認してください。