С Andrue Eastman на GitHub :
Скорее всего, вы получаете ошибку из-за использования ChunkedUploadPorvider вместо использования FileUploadTask для загрузки вложения, которое является установка заголовка Auth, чтобы вызвать полученную ошибку.
Чтобы использовать задачу загрузки файла, выполните следующие шаги
Сначала создайте сеанс загрузки и передайте его задаче, как показано.
// Create task
var maxSliceSize = 320 * 1024; // 320 KB - Change this to your chunk size. 4MB is the default.
LargeFileUploadTask<FileAttachment> largeFileUploadTask = new LargeFileUploadTask<FileAttachment>(uploadSession, stream, maxSliceSize);
Создание монитора загрузки (необязательно)
// Setup the progress monitoring
IProgress<long> progress = new Progress<long>(progress =>
{
Console.WriteLine($"Uploaded {progress} bytes of {stream.Length} bytes");
});
Служба возвращает только URI местоположения, который может быть считан из объекта результата, следующим образом.
UploadResult<FileAttachment> uploadResult = null;
try
{
uploadResult = await largeFileUploadTask.UploadAsync(progress);
if (uploadResult.UploadSucceeded)
{
Console.WriteLine(uploadResult.Location);//the location of the object
}
}
catch (ServiceException e)
{
Console.WriteLine(e.Message);
}