Я пытаюсь загрузить документ в Microsoft Teams с помощью Microsoft Graph (бета-версия), но документ повреждается после успешной загрузки.
Используя Graph, я сначала создаю группу, создаю команду на основе группы, добавляю некоторых членов команды и, наконец, загружаю документ в канал по умолчанию.
Все работает нормально, за исключением того, что загруженный документ поврежден, и редактор Office Online не может его открыть. Однако мы можем загрузить файл и открыть его в Microsoft Word после исправления файла.
Ниже приведен код, который я использую для загрузки документа->
FileInfo fileInfo =
new FileInfo(@"F:\Projects\TestProjects\MSTeamsSample\MSTeamsSample\Files\Test File.docx");
var bytes = System.IO.File.ReadAllBytes(fileInfo.FullName);
var endpoint = $"https://graph.microsoft.com/beta/groups/{groupId}/drive/items/root:/General/{fileInfo.Name}:/content";
var fileContent = new ByteArrayContent(bytes);
fileContent.Headers.ContentType =
MediaTypeHeaderValue.Parse("application/octet-stream");
var requestContent = new MultipartFormDataContent();
requestContent.Add(fileContent, "File", fileInfo.Name);
var request = new HttpRequestMessage(HttpMethod.Put, endpoint);
request.Headers.Authorization =
new AuthenticationHeaderValue("Bearer", "<Access Token>");
request.Content = requestContent;
var client = new HttpClient();
var response = client.SendAsync(request).Result;
Я попытался изменить тип содержимого на application/vnd.openxmlformats-officedocument.wordprocessingml.document
, но безуспешно. Я не понимаю, что здесь может быть не так. Код довольно прост, основан на this документация. Любая помощь будет принята с благодарностью.