参数组合无效或不完整。\ r \ n参数名称:tagObject VSTS Git API

我尝试使用 GitHttpClient CreateAnnotatedTagAsync 方法(microsoft.TeamFoundation.SourceControl.WebApi)将标签附加到现有提交。但是每次我不断出错时:

  

参数组合无效或不完整。\ r \ n参数名称:tagObject

用于添加带注释标签的部分代码。

GitObject gitObject = new GitObject { ObjectId = commitId,ObjectType = GitObjectType.Commit };
GitAnnotatedTag tagObj = new GitAnnotatedTag
{
    Name = tagName.Replace(' ','_'),TaggedObject = gitObject,TaggedBy = new GitUserDate
    {
        Name = "FirstName LastName",Email = "someemail@smth.com",Date = DateTime.Now
    },Message = tagComment        
};

GitAnnotatedTag res = gitClient.CreateAnnotatedTagAsync(tagObj,projectName,new Guid(repositoryId)).Result;

我尝试发送的标签对象示例:

参数组合无效或不完整。\ r \ n参数名称:tagObject VSTS Git API

参数组合无效或不完整。\ r \ n参数名称:tagObject VSTS Git API

任何帮助将不胜感激。

yy031003 回答:参数组合无效或不完整。\ r \ n参数名称:tagObject VSTS Git API

所以我只是使用API​​创建标签:

GitAnnotatedTag tag = null;

        try
        {
            var tagObject = new { Name = tagName.Replace(' ','_'),Message = tagComment,TaggedObjectId = commitId };
            StringContent stringContent = new StringContent(JsonConvert.SerializeObject(tagObject),Encoding.UTF8,"application/json");
            client.DefaultRequestHeaders.Add("Accept","application/json; charset=utf-8; api-version=3.2-preview.1");

            using (HttpResponseMessage response = client.PostAsync(string.Format(createTagUrl,projectId,repositoryId),stringContent).Result)
            {
                response.EnsureSuccessStatusCode();
                string responseBody = await response.Content.ReadAsStringAsync();                    
                tag = JsonConvert.DeserializeObject<GitAnnotatedTag>(responseBody);
            }
        }
        catch (Exception ex)
        {
            // Add some error handling here
        }

        return tag;
本文链接:https://www.f2er.com/3149627.html

大家都在问