0

我正在尝试构建 Web 应用程序并将输出复制到根目录中的 build\bin\debug 文件夹。但是会为 Web 应用程序中引用的每个项目创建文件夹结构。我需要在根文件夹中输出 Web 应用程序和所有引用的 dll。

<?xml version="1.0" encoding="utf-8" ?>
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
<PropertyGroup>
    <BuildDir>build\bin\$(BuildConfig)</BuildDir>
    <BuildConfig>Debug</BuildConfig>
</PropertyGroup>

<ItemGroup>
   <ProjectToBuild Include="testwebapp.sln">
    <Properties>OutputPath=$(BuildDir);Configuration=$(BuildConfig)</Properties>      
   </ProjectToBuild>
</ItemGroup>

<Target Name="Build">  
   <Message Text="Building solution..."/>
   <MSBuild Projects="@(ProjectToBuild)" Targets="Build">
   </MSBuild>
</Target>
</Project>

但是如果我使用命令行提示符执行它,它就可以工作

msbuild "testwebapp.sln" /t:build /p:OutputPath="custompath"
4

1 回答 1

0

属性按顺序评估,以便您的

<BuildDir>build\bin\$(BuildConfig)</BuildDir>
<BuildConfig>Debug</BuildConfig>

应该

   <BuildConfig>Debug</BuildConfig>
    <BuildDir>build\bin\$(BuildConfig)</BuildDir>
于 2013-05-10T11:34:32.820 回答