Прочитать файл каталога в роли работника облачной службы Azure

#azure #azure-worker-roles #azure-cloud-services

#azure #azure-worker-роли #azure-cloud-services

Вопрос:

Я пытаюсь прочитать несколько файлов sql из каталога в рабочей роли Azure. Вот мой код,

 string appRoot = Environment.GetEnvironmentVariable("RoleRoot");

string pathToFiles = Path.Combine(appRoot   @"", @"approotSQLScript");

if (Directory.Exists(pathToFiles))
{
}
  

Я поместил несколько файлов SQL в каталог SQLScript с опцией копировать всегда, чтобы он копировал эти файлы в каталог bin.

Код отлично работает при отладке на локальном компьютере. Но это не работает в Azure.

Это условие не выполняется в Azure,

 if (Directory.Exists(pathToFiles)) { }
  

Комментарии:

1. Ваша конструкция пути выглядит корректной. Выполнили ли вы RDP’d в экземпляре, чтобы убедиться, что файлы находятся там, где, по вашему мнению, они должны быть?

Ответ №1:

Возникла аналогичная проблема

%ROLEROOT%approotMyDirectory может быть доступен с помощью сценариев, которые запускались при запуске роли

однако, если вы подключитесь к виртуальной машине, на которой выполняется роль, вы не сможете получить доступ к этому пути

вы можете попробовать ссылаться на файлы через относительный путь, зависит от того, что вы хотите с ними сделать

надеюсь, это поможет