我想创建一个 Azure DevOps 附件。附件是 Outlook 邮件。从这里看到的文档。
正文必须是“[二进制文件内容]”。如何将 .msg 文件读入 C# 并将其添加到 JsonBody 请求中?
最近不得不做这样的事情,代码看起来像下面的东西。
byte[] 是我直接从文件流中读取的数据,就像这样
byte[] bytes;
using (var img = File.OpenRead("message.msg"))
{
using (var memoryStream = new MemoryStream())
{
stream.CopyTo(memoryStream);
bytes = memoryStream.ToArray();
}
}
然后将其发布到 Azure DevOps
internal async Task<Attachement> UploadAttachment(string filename,byte[] content)
{
ByteArrayContent data = new ByteArrayContent(content);
HttpClient client = GetApiClient();
using (HttpResponseMessage response = await client.PostAsync($"https://dev.azure.com/{_org}/_apis/wit/attachments?fileName={filename}&api-version=5.1", data))
{
// Parse response body en evaluate result
var responseBody = await response.Content.ReadAsStringAsync();
return JsonConvert.DeserializeObject<Attachement>(responseBody);
}
}
这对我们来说似乎很有效:)
不要忘记使用以下方法将其实际添加到工作项中:https ://docs.microsoft.com/en-us/rest/api/azure/devops/wit/work%20items/update ? view = azure-devops- rest-5.1#add-an-attachment
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句