【问题标题】:TFS get name of build directory inside of CodeActivityTFS 获取 CodeActivity 内的构建目录的名称
【发布时间】:2014-11-25 20:30:15
【问题描述】:

我正在使用 CodeActivity 基类创建一个 TFS2013 自定义活动。

这是我正在处理的重载...

    protected override void Execute(CodeActivityContext context)

使用 CodeActivityContext,如何获取构建目录(文件在被 MSBuild 构建之前被删除的位置)?在 MSBuild 接管之前,我需要修改构建目录路径中的文件。

【问题讨论】:

    标签: tfs visual-studio-2013 tfsbuild


    【解决方案1】:

    您可以将字符串传递给您的活动

    [RequiredArgument]
            public InArgument<string> DirectoryToSearch { get; set; }
    

    在以前版本的 TFS 中,您可以只传入 SourcesDirectoryBinariesDirectory

    在 2013 年,SourcesDirectory 和 BinariesDirectory 的默认对象已被撤销。

    你现在可以从

    Microsoft.TeamFoundation.Build.Activities.Extensions.WellKnownEnvironmentVariables 对象。

    【讨论】:

    【解决方案2】:

    这些路径现在存储在环境变量中(我相信从 TFS 2013 开始)。

    在此处阅读有关环境变量的更多信息:http://msdn.microsoft.com/en-ca/library/hh850448.aspx

    你想要的是TF_BUILD_SOURCESDIRECTORY

    【讨论】:

    • 我看到了这些,但我不清楚如何从 CodeActivity 访问这些。你能展示一个快速的代码示例吗?
    • 就像在任何 C# 代码中一样,System.Environment.GetEnvironmentVariable("TF_BUILD_SOURCESDIRECTORY") msdn.microsoft.com/en-us/library/77zkk0b6(v=vs.110).aspx
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-12
    • 1970-01-01
    • 2016-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多