Обновление проекта функций Azure в Visual Studio - PullRequest
0 голосов
/ 09 октября 2018

Итак, Azure Functions v2 не работает, если я создаю новую функцию в Azure и устанавливаю для нее V2, но затем публикую свой старый проект функций в Visual Studio, он возвращается к V1.

IПосмотрим, если я создам новый проект функции в Visual Studio, он спросит меня, хочу ли я V1 или V2.Есть ли возможность обновить существующий проект или мне нужно создать новый?(Это не конец света, если мне придется создать новый и скопировать его, но было бы неплохо)

1 Ответ

0 голосов
/ 09 октября 2018

Среда выполнения Azure Function 2.x основана на .NET Core 2 и требует, чтобы код функции был нацелен на .NET Standard.Ваши старые функции v1, что означает, что их целевая среда - Full .NET Framework.Даже если вы установили версию времени выполнения функции на портале ~ 2, Azure может сказать, что код на самом деле предназначен для времени выполнения ~ 1.

Я рекомендую вам создать функцию шаблона v2 и сравнить старое содержимое с новым шаблоном v2.

  1. Зависимости

    Для v2 нам нужно установить расширения для триггеров и привязок, кроме http и timer.Когда мы создаем проект функции или добавляем одну функцию (щелкните правой кнопкой мыши проект> Добавить> Новая функция Azure) в VS, пакеты соответствующих расширений устанавливаются автоматически, нам нужно только вручную установить пакеты для v2 , когда мы используемпривязки ввода / вывода.

  2. Код функции

    Из-за разницы целевой структуры обычно требуется модификация кода (например, тип журнала изменяется с TraceWriter наILogger).

  3. Конфигурации

    Проверьте host.json, если есть настройки , относящиеся к расширениям и журналу, формат которого изменился.

Помимо этих изменений, которые мы должны выполнить вручную, существует множество изменений функций , на которые следует обратить внимание при переходе на 2.x runtime.

...