我需要使用我的主项目中未引用的外部DLL。我已经做了一些测试,但是现在,我需要自动完成。
所以,在我的主要网络项目的“Post Build”事件中,我把它放在:
Call c:\mybat.bat $(SolutionDir) $(TargetName) $(Configuration)
在c:\ mybat.bat中,我有这个:
set solution=%~1
set target=%~2
set configuration=%~3
set appli=Project1
rem : MSBuild...
cd "%solution%%appli%" && "C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MsBuild.exe" "%solution%%appli%\%appli%.csproj" /p:Configuration=%configuration% /p:Platform="AnyCPU"
rem copy DLL generate by build
xcopy /Y /R "%solution%%appli%\bin\%appli%.dll" "%solution%%target%\bin\%appli%.dll*"
rem copy views...
xcopy /Y /R /S "%solution%%appli%\Views\*.*" "%solution%%target%\Views\"
这就是诀窍。
但是,当我发布我的网站时,DLL“Project1.dll”不在我的“website \ bin”文件夹中。仅在我的Bin项目解决方案中。
如何在发布文件中添加我的* .dll和我的视图文件夹?
答案 0 :(得分:0)
您必须将这些文件包含到项目中,因为发布只复制msbuild进程知道的文件(即已经成为项目本身的一部分)。
另一个选择可能是更新msbuild目标文件(通过在项目文件中包含自定义/增强目标)。
https://stackoverflow.com/a/1403360/2298807包含可能用作此起点的文章列表。