Visual Studio 2008中的BaseOutputPath错误?

6 .net msbuild visual-studio-2008 visual-studio

MSDN:

BaseOutputPath:指定输出文件的基本路径.如果设置,MSBuild将使用OutputPath = $(BaseOutputPath)\ $(配置)\

我尝试使用MSBuild项目属性BaseOutputPath,而不是为每个配置和平台组合指定OutputPath,但Visual Studio在编译时会抱怨:

未为此项目设置OutputPath属性.请检查以确保您已指定有效的配置/平台组合.

我把<BaseOutputPath>..\Binaries</BaseOutputPath>第一个无条件的<ProjectProperty>.

我是否错误地使用它,或者这是Visual Studio中的已知错误?

Bri*_*ian 7

它更可能是文档中的错误,而不是VS2008/MSBuild中的错误.

你总是可以推断你想要做什么(greuling)检查你的项目文件和它导入的Microsoft.Common.Targets文件(通常通过例如Microsoft.CSharp.targets;这些文件存在于例如

C:\ WINDOWS\Microsoft.NET \框架\ V2.0.50727\Microsoft.Common.targets

)并找到最终填充OutputPath的所有MSBuild逻辑.

在这种情况下,我认为文档完全是谎言,你应该明确说出来

<OutputPath>$(BaseOutputPath)\$(Configuration)</OutputPath>
Run Code Online (Sandbox Code Playgroud)

在项目文件的无条件属性中(并从条件属性中删除OutputPath)以使其工作.