我很难使用 Visual Studio 2012 UI 通过 Webdeploy 部署我的第三方非参考程序集。我有一个名为“库”的文件夹,其中包含一些程序集。通过我的 *.csproj 文件中的以下内容,我可以将Build Action设置为“ ThirdPartyAssemblies ”:
<ItemGroup>
<AvailableItemName Include="ThirdPartyAssemblies">
<Visible>false</Visible>
</AvailableItemName>
</ItemGroup>
<Target Name="AfterBuild">
<Message Text="Build | Third party assemblies" Importance="high" />
<Copy DestinationFolder="$(OutputPath)" SourceFiles="@(ThirdPartyAssemblies)" SkipUnchangedFiles="true" />
</Target>
这很好用;当我构建时,程序集被复制到 bin 文件夹的根目录:-) 现在我遇到了一个问题:我无法通过 Webdeploy 将这些文件发布到服务器。我已经尝试了很多东西,似乎我找不到适合此任务的 MSBuild 目标......使用 Visual Studio 2010,我可以使用它:
<Target Name="MyTargetName">
<Message Text="Deploy | Third party assemblies" Importance="high" />
<Copy DestinationFolder="$(OutputPath)" SourceFiles="@(ThirdPartyAssemblies)" SkipUnchangedFiles="true" />
</Target>
<PropertyGroup>
<OnAfterCopyAllFilesToSingleFolderForPackage>
MyTargetName
</OnAfterCopyAllFilesToSingleFolderForPackage>
</PropertyGroup>
问题是; OnAfterCopyAllFilesToSingleFolderForPackage
不再调用目标:- /
在深入研究之后C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web\Microsoft.Web.Publishing.targets' file, I've also tried 'OnAfterCopyAllFilesToSingleFolderForMsdeploy
,但我无法让它工作。
谁能告诉我可以使用什么目标将这些程序集复制到带有 Webdeploy 的 Package 文件夹/服务器?
为什么 Visual Studio 2012 不将完整的 bin 文件夹复制到 Package 文件夹中?