Отладчик не переходит / в асинхронный / ждущий - PullRequest
1 голос
/ 19 июня 2020

Я тестирую какой-то код изолированно, и он работает отлично - отладчик проходит через каждую строку и возвращает намеченный результат. Вот часть кода, который я тестирую изолированно:

static async Task<List<string>> GetExclusionDataAsync(Uri blobUri)
{
       var listOfExclusions = new List<string>();

       var blobDownloadInfo = await StreamBlobData(blobUri);

       using (StreamReader reader = new StreamReader(blobDownloadInfo.Content))
       {
             while (!reader.EndOfStream)
             {
                 string exclusionRow = reader.ReadLine();
                 listOfExclusions.Add(exclusionRow);
              }
        }
       return listOfExclusions;
}

private static async Task<BlobDownloadInfo> StreamBlobData(Uri blobPathUri)
{
      BlobClient blobClient = new BlobClient(blobPathUri);
      BlobDownloadInfo blobDownloadInfo = await blobClient.DownloadAsync();
      return blobDownloadInfo;
}

Я скопировал этот тестовый код (почти) точно в другой, гораздо более крупный, dev. решение. Когда я устанавливаю точку останова на строке BlobClient blobClient = new BlobClient(blobPathUri);, выполняю отладку и пытаюсь перейти / перейти в эту строку, отладчик пропускает остальную часть кода в методе и переходит обратно к предыдущему методу без предполагаемых данных. См. Ниже:

Отладчик запускается в строке 75.

enter image description here

Затем я перехожу / перехожу на, и отладчик переходит к строке 60 ( вызывающий метод) без данных.

enter image description here

Как мне исправить это / что происходит?

Я новичок в асинхронном программировании и получении данных из blob место хранения. Заранее спасибо!

1 Ответ

1 голос
/ 26 июня 2020

Я добавляю ответ, чтобы закрыть эту проблему.

Чтобы войти / перейти, вам необходимо установить пакет azure .storage.blobs в вызывающий проект, так что это просто ссылка на . Затем во время отладки вы можете перейти к нему / поверх него.

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