2

複数のプロジェクトと ASP.NET Web サイト プロジェクトを含むソリューションを構築するバッチ ファイルを作成しようとしています。出力は、ASP.NET Web サイトのプリコンパイルの結果を含む "build" フォルダーである必要があります。

以下のアプローチを使用すると、すべてのプロジェクトがコンパイルされ、ビルドフォルダーが各ディレクトリの下の個々のプロジェクト用に作成されます。Web サイトの場合、必要なすべての dll ファイルと .aspx ファイルを含む新しいフォルダー "precompiled" が作成されます。

しかし、ASP.NET Web サイト ファイルを 1 つの 'build' フォルダーに配置する必要があり、残りの C# ライブラリのコンパイルは個々の BIN フォルダーで行う必要があります。

<Target Name="Build">
     <MakeDir Directories="$(OutputPath)" Condition="!Exists('$(OutputPath)')" />
     <MSBuild Projects="@(Solution)" Properties="OutputPath=\Build"/>
</Target>

<PropertyGroup>   
     <OutputPath>Build\</OutputPath>
</PropertyGroup>

Web サイト プロジェクトのコンパイルについて読みましたが、「aspnet_compiler」タスクを使用する必要があります。ただし、プロジェクトの依存関係をコンパイルしていないため、参照エラーが発生します。プロジェクトを個別にコンパイルすると、正常に動作します。

つまり、C# プロジェクト用の MSBuild をインプレースにする必要があり、asp.net プロジェクトは別の「ビルド」フォルダーにコンパイルする必要があります。任意の洞察をいただければ幸いです。

4

0 に答える 0