Я пытаюсь прочитать файл конфигурации json из Azure хранилища больших двоичных объектов из функции Azure. Это прекрасно работает при локальном запуске в VS2019, но при запуске Azure выдает ошибку «Система не может найти указанный файл». Доступ к контейнеру осуществляется через ключ, поэтому он не похож на контекст пользователя и msi, но я могу ошибаться. Код выглядит так:
log.LogInformation($"Got blockBlobReference, starting streamreader");
try
{
using (MemoryStream memoryStream = new MemoryStream())
{
try
{
blockBlobReference.DownloadToStreamAsync(memoryStream).GetAwaiter().GetResult();
}
catch (Exception ex)
{
log.LogError($"ParseConfigurationBlob: DownloadToStreamAsync failed: {ex.Message} ");
}
return JsonConvert.DeserializeObject<ProvisioningConfiguration>(System.Text.Encoding.UTF8.GetString(memoryStream.ToArray()));
}
}
catch (Exception ex)
{
log.LogError($"ParseConfigurationBlob: Unable to read JSONBlobConfigurationFile - {ex.Message} ");
}
Любопытно, что улов никогда не срабатывает, вместо этого я получаю:
2020-04-23T14:00:00.286 [Information] Got blockBlobReference, starting streamreader
2020-04-23T14:00:00.594 [Error] ProvisionBuilder: The system cannot find the file specified