Bin は正常にビルドおよび展開されますが、Drop ツリーに Web サイトが作成されないという問題がありました。数日間いろいろ試した結果、最終的に解決策としてプロジェクトファイルの変更にたどり着きました。
デプロイする Web サイトは、もともと VS2008 の WebSite プロジェクトであり、VS2012 で後で WebApplication プロジェクトに変換されました。csproj ファイル (および/または vbproj ファイル) で、次のセクションを見つけました。
<Import Project="$(MSBuildBinPath)\Microsoft.VisualBasic.targets" />
<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
これを、新しく作成した MVC アプリから収集した次のものに置き換えました。
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">11.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.VisualBasic.targets" />
<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
<Target Name="MvcBuildViews" AfterTargets="AfterBuild" Condition="'$(MvcBuildViews)'=='true'">
<AspNetCompiler VirtualPath="temp" PhysicalPath="$(WebProjectOutputDir)" />
</Target>
これにより、変数が定義され、ビルド ターゲットが設定され、自動ビルドがそれらを取得できるようになります。WebApplication 変換プロセスがこれらを見逃した理由がわかりません。プロジェクトが VB でない場合は、'VisualBasic' を 'CSharp' に置き換えてください。また、ビルド サーバーの構成によっては、v11.0 の代わりに v10.0 を使用する必要がある場合があります。