我已经创建了一个CodeActivity,用于(自定义)构建定义.在执行其主要目的之前,此活动需要将位于服务器上的文件复制到/从"源目录","自定义文件夹"等位置复制到"放置目录"(等).
我所拥有的一些变量是有效路径,但其他变量显然是"相对路径"的占位符.但是,我需要物理服务器路径,以便我可以来回复制有用的项目.
我需要的东西:
项目根的物理路径(见下图)
能够解析自定义文件夹的物理路径(参见下图)
能够从"相对路径"解析物理路径会很高兴
当然,我可以将项目名称传递给活动(用于解析目的)......因为那只是'俗气'.
我的问题是:
如何解析TFS项目根的物理路径?
一旦我解析了root,我可以依靠它来"构建"自定义文件夹的路径吗?
如何从'$/Test/Drops'等相对路径获取服务器路径?
我知道如何获得的一些事实:
这些项目有些用处,而其他项目......并非如此.除非,我可以使用它们来获取物理服务器路径.
BuildDirectory:
'F:\ bld\Builds\41\Test\Test_CustomActivity_CreateNuGetPackages'
BuildDetail.DropLocationRoot:
'$/Test/Drops'
...希望我有物理路径
BuildDetail.BuildController.CustomAssemblyPath:
'$/Test/BuildProcessTemplates'
...希望我有物理路径
SourcesDirectory:
'F:\ bld\Builds\41\Test\Test_CustomActivity_CreateNuGetPackages\src'
Workspace.Folders:
'F:\ bld\Builds\41\Test\Test_CustomActivity_CreateNuGetPackages\src\Test\NuGet.Research \net35'
我想要的一些例子:
更新:2015年
2月2 日 @Edward - 根据您的要求.下面是我想要完成的更详细的解释.