Похоже, что с вашим кодом здесь что-то не так.Однако ObjectDisposedException
подразумевает, что объект, поддерживающий поток, был удален, что не должно происходить до тех пор, пока ответ не будет возвращен, что также не должно происходить, пока вы ожидаете асинхронную задачу, как вы делаете.
Учитывая, что здесь не над чем работать, это всего лишь предположение.Я думаю, что происходит то, что запрос отменяется клиентом, что должно вызвать выброс TaskCancelledException
.Однако, поскольку вы не передаете токен отмены в свою асинхронную задачу, он не может отслеживать отмену задачи.Поэтому, скорее всего, он задыхается.Если метод позволяет вам передать токен отмены, вы должны:
public async Task<IActionResult> Foo(..., CancellationToken cancellationToken = default)
{
...
await blockBlob.UploadFromStreamAsync(formFile.OpenReadStream(), cancellationToken);
}