在MSBuild中获取父目录

sam*_*pin 8 .net msbuild nant

在NAnt我有一个非常简单的属性来获取我的项目的根,它看起来像这样:

<property
name="project.root.folder" 
value="${directory::get-parent-directory(directory::get-parent-directory(project.local.folder))}"
/>
Run Code Online (Sandbox Code Playgroud)

这将我带到我的项目的根目录,从中构建我的所有路径.

在MSBuild我可以$(MSBuildProjectDirectory)用来获取我当前的目录,但我想获得父目录的完整路径.NAnt使用directory::get-parent-directory它有魅力,我希望在MSBuild中有类似的功能.

我发现了一个类似的问题(http://stackoverflow.com/questions/514264/msbuild-find-msbuildprojectdirectory-parent-directory),但我认为必须有一些更简单的问题,当然!

山姆:)

Bri*_*ler 14

我假设这是MSBuild 4.0.你可以这样做:

<PropertyGroup>
     <RootFolder>$([System.IO.Path]::GetDirectoryName($(MSBuildProjectDirectory)))</RootFolder>
</PropertyGroup>
<Message Text="RootFolder: '$(RootFolder)'" />
Run Code Online (Sandbox Code Playgroud)

  • @Spider M9 - 我愿意,但是我正处于SDN-M的另一个国家的树林中,在运行发电机的系统上通过SSH/SOCKS隧道传输512k带宽. (3认同)