You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过WorkItemTrackingHttpClient在Azure DevOps工作项描述/评论中添加内嵌图片?

如何通过代码给Azure DevOps工作项添加内嵌图片

要实现代码内嵌图片到工作项描述或评论,需要分两步完成:先上传图片作为工作项附件,再在富文本内容中引用该附件。以下是具体实现步骤及代码示例:

1. 上传图片作为工作项附件

使用WorkItemTrackingHttpClient的AddAttachmentAsync方法,将图片文件上传并关联到目标工作项:

using Microsoft.VisualStudio.Services.Common;
using Microsoft.VisualStudio.Services.WebApi;
using Microsoft.TeamFoundation.WorkItemTracking.WebApi;
using Microsoft.TeamFoundation.WorkItemTracking.WebApi.Models;
using System.IO;
using System.Collections.Generic;

// 初始化Azure DevOps连接
var orgUrl = new Uri("https://dev.azure.com/你的组织名");
var patToken = "你的个人访问令牌(PAT)";
var connection = new VssConnection(orgUrl, new VssBasicCredential(string.Empty, patToken));
var workItemClient = connection.GetClient<WorkItemTrackingHttpClient>();

// 读取本地图片文件
string imagePath = @"C:\示例图片.png";
using var imageStream = File.OpenRead(imagePath);

// 上传图片到指定工作项
var attachment = await workItemClient.AddAttachmentAsync(
    contentStream: imageStream,
    fileName: Path.GetFileName(imagePath),
    project: "你的项目名",
    workItemId: 123 // 目标工作项ID
);

2. 在描述或评论中引用内嵌图片

上传完成后,通过附件的Id属性构造HTML格式的图片引用,再更新工作项的对应字段:

更新工作项描述

// 构造描述更新操作,使用HTML标签引用附件
var updateOps = new List<JsonPatchOperation>
{
    new JsonPatchOperation
    {
        Operation = Operation.Replace, // 若要追加内容可改为Add,Replace会覆盖原有描述
        Path = "/fields/System.Description",
        Value = $@"<p>业务场景说明:</p><img src=""attachment://{attachment.Id}"" alt=""场景截图"">"
    }
};

// 执行工作项更新
await workItemClient.UpdateWorkItemAsync(updateOps, 123);

添加带内嵌图片的评论

// 构造评论更新操作
var commentOps = new List<JsonPatchOperation>
{
    new JsonPatchOperation
    {
        Operation = Operation.Add,
        Path = "/fields/System.History",
        Value = $@"<p>已完成问题排查,截图如下:</p><img src=""attachment://{attachment.Id}"" alt=""排查截图"">"
    }
};

// 添加评论到工作项
await workItemClient.UpdateWorkItemAsync(commentOps, 123);

注意事项

  • 个人访问令牌(PAT)需拥有工作项读写及附件上传权限
  • 上传附件时指定workItemId可直接关联到目标工作项,无需额外操作
  • 工作项的描述和评论支持HTML格式,必须使用attachment://{附件ID}作为图片的src属性值才能实现内嵌显示

内容的提问来源于stack exchange,提问作者Alex Zaitsev

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 18:45:54