プロジェクトを複数のバージョンでビルドするための小さなMSBuildスクリプトを作成しました。VS2012コマンドプロンプトから実行すると、エラーや例外は発生しません。ただし、作成されたアセンブリを比較すると、それらは同じです。スクリプトに何か問題がありますか?
<Target Name="Build">
<MSBuild Projects=".\WcfClientBase\WcfClientBase.csproj"
Properties="Configuration=Release;OutputPath=.\BuildArtifacts\net45;TargetFrameworkVersion=v4.5" />
<MSBuild Projects=".\WcfClientBase\WcfClientBase.csproj"
Properties="Configuration=Release;OutputPath=.\BuildArtifacts\net40;TargetFrameworkVersion=v4.0" />
<MSBuild Projects=".\WcfClientBase\WcfClientBase.csproj"
Properties="Configuration=Release;OutputPath=.\BuildArtifacts\net35;TargetFrameworkVersion=v3.5" />
</Target>
VS2012Professionalをインストールしています。また、.NET4.5には独自のMSBuild.exeがないことにも気づきました。バージョン4.0のものを使用していますか?
アップデート
バージョンごとにVisualStudioを使用してビルドしましたが、すべてのアセンブリが異なります。スクリプトに問題があります。TargetFrameworkVersionパラメーター名を故意にタイプミスしましたが、それでも同じ出力が作成および生成されました。プロジェクトファイルからそのパラメータを上書きできないか、他のパラメータが不足している可能性があります。他にアイデアはありますか?