Функция Azure BlobContainer.ListBlob доступна в Portal CScript, а не в VS C # - PullRequest
0 голосов
/ 26 сентября 2018

Сначала я разработал некоторую тестовую функцию с порталом, там была доступна функция в BlobContainer ListBlob.Теперь я переключился на VS2017, чтобы получить более сложный код, но там ListBlob недоступен, он должен быть ListBlobsSegmentedAsync.Но это совершенно другой подход ... Я просто хотел бы понять, почему это возможно в Портале, а не в VS ...

1 Ответ

0 голосов
/ 27 сентября 2018

Это вызвано разницей Storage SDK, используемой во время выполнения разных функций.

На портале Azure проверьте версию среды выполнения в настройках приложения-функции, вы, вероятно, увидите 1.0.11959.0 (~ 1).Это означает, что код, созданный на портале прямо сейчас, нацелен на .NET Framework 4.7.Для Storage SDK на основе .NET Framework и ListBlobs, и ListBlobsSegmentedAsync действительны для CloudBlobContainer.enter image description here

Обратитесь к локальному разработчику в VS, возможно, вы выбрали v2 при создании функции Azure.v2 Функции предназначены для .NET Standard 2.0 и работают в режиме исполнения ~ 2 (.NET Core 2).Storage SDK на основе .NET Core предоставляет только ListBlobsSegmentedAsync для работы со списком над контейнером.

enter image description here

Для обеспечения согласованности можно создать функцию v1 в VS или изменитьвремя выполнения функции в настройках приложения Function.Обратите внимание, что если вы выберете более позднюю версию, вам сначала нужно удалить старые функции, так как они станут недействительными в другой среде выполнения.

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