为 TFS 版本设置 'KeepForever'

Setting 'KeepForever' for a TFS Release

我使用 Microsoft.VisualStudio.Services.Release.Client 从 C# 代码修改 TFS 版本。我使用版本 16.143.2 的 ClientLibrary 和 TFS2017Update2。 我只想修改一个版本的 KeepForever 标志,但它不起作用。 由方法 'UpdateReleaseAsync' 返回的更新版本始终具有 KeepForever 的 'old' 值。 这是我的代码:

    public void SetReleaseRetainIndefinitely(ReleaseHttpClient releaseClient, Release release, string tfsProjectName, bool retain)
    {
        release.KeepForever = retain;
        var task = releaseClient.UpdateReleaseAsync(release, tfsProjectName, release.Id);
        var updatedRelease = task.Result;
        if (updatedRelease.KeepForever == retain)
        {
            Console.WriteLine($"Set 'Retain Indefinitely' to {retain}");
        }
        else
        {
            Console.WriteLine($"Failed to set 'Retain Indefinitely' to {retain}");
        }
    }

任何提示我做错了什么?

您应该将 UpdateReleaseResourceAsync 方法与 ReleaseUpdateMetadata 一起使用