System.IO.IOException: указанный сервер не может выполнить запрошенную операцию - PullRequest
1 голос
/ 30 января 2020

Немного контекста:

  • ASP. NET приложение, работающее внутри виртуальной машины (Windows Server-2012 и. NET Framework 4.6)
  • Он загружает файлы в каталог на виртуальной машине
  • Этот каталог является символической c ссылкой (виртуальный каталог, созданный из IIS, я думаю) на частное Azure хранилище
  • Иногда происходит сбой, когда вызов DirectoryInfo.GetFiles($"*{fileName}*").FirstOrDefault() после файлов, в которые были загружены

Поведение:

  • Это происходит только при чтении нескольких файлов один за другим
  • Работало отлично в течение нескольких лет, до лета 2019 года

Ошибка:

 System.IO.IOException: The specified server cannot perform the requested operation. at 
    System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) at 
    System.IO.FileSystemEnumerableIterator`1.CommonInit() at 
    System.IO.FileSystemEnumerableIterator`1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler`1 resultHandler, Boolean checkHost) at 
    System.IO.DirectoryInfo.InternalGetFiles(String searchPattern, SearchOption searchOption) at 
    the method which uses the GetFiles() method showed before

Вопросы:

  • С чего можно начать расследование?
  • Каковы обычные подозреваемые? Я предполагаю, что каталог не заблокирован другим процессом, потому что я видел, что в этом случае есть более конкретное c исключение
...