Visual studio 2010 如何从NAnt获得VS2010 Web.config转换?
在我的Nant文件中,我得到(路径缩短): 解决方案和相关项目都是VS2010,Web应用程序甚至在.csproj中有正确的引用:Visual studio 2010 如何从NAnt获得VS2010 Web.config转换?,visual-studio-2010,msbuild,nant,Visual Studio 2010,Msbuild,Nant,在我的Nant文件中,我得到(路径缩短): 解决方案和相关项目都是VS2010,Web应用程序甚至在.csproj中有正确的引用: <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" /> 这难道不应该起作用吗?您不能,这不是NAnt特有的问题,您不能对解决方案文件调用Transfor
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
这难道不应该起作用吗?您不能,这不是NAnt特有的问题,您不能对解决方案文件调用
TransformWebConfig
解决方案:
- 在项目文件中调用它:
<exec program="${framework}\msbuild.exe" commandline="..\src\WebApp\WebApp.csproj /m /t:TransformWebConfig /p:Configuration=Release" />
<target name="build" description="Compiles/Builds the Solution">
<echo message="Building..." />
<property name="build.configuration" value="Release" />
<msbuild project="${path::combine(staging.project,'_solutions\mySolutionName.sln')}" verbosity="minimal" failonerror="true" verbose="false">
<arg value="/p:Configuration=${build.configuration};OutputPath=${path::combine(staging.output,'bin')}" />
<arg value="/p:UseWPP_CopyWebApplication=True" />
<arg value="/p:PipelineDependsOnBuild=False" />
<arg value="/p:WebProjectOutputDir=${staging.output}\" />
<arg value="/t:Rebuild" />
<arg value="/nologo" />
</msbuild>
<echo message="Building finished..." />
网站运行所需的所有文件都复制到指定的“WebProjectOutputDir”属性中,包括应用了转换的web.Config。它就像一个符咒:)
-Diego设置
使用wpp_CopyWebApplication=True
就是诀窍-谢谢!
<exec program="${framework}\msbuild.exe"
commandline="..\src\WebApp\WebApp.csproj /m /t:TransformWebConfig /p:Configuration=Release" />
<Target Name="AfterBuild">
<CallTarget Targets="TransformWebConfig"/>
</Target>
<target name="build" description="Compiles/Builds the Solution">
<echo message="Building..." />
<property name="build.configuration" value="Release" />
<msbuild project="${path::combine(staging.project,'_solutions\mySolutionName.sln')}" verbosity="minimal" failonerror="true" verbose="false">
<arg value="/p:Configuration=${build.configuration};OutputPath=${path::combine(staging.output,'bin')}" />
<arg value="/p:UseWPP_CopyWebApplication=True" />
<arg value="/p:PipelineDependsOnBuild=False" />
<arg value="/p:WebProjectOutputDir=${staging.output}\" />
<arg value="/t:Rebuild" />
<arg value="/nologo" />
</msbuild>
<echo message="Building finished..." />