Какие части ASP.NET используют Функции Azure?

Функции Azure используют классы HttpResult и IActionResult из ASP.NET (Core?) Для обработки триггеров HTTP. Какая версия ASP.NET предназначена для среды выполнения функций Azure v2? Я знаю, что v2 использует .NET Standard 2.0, работающий на .NET Core, поэтому я предполагаю, что используется ASP.NET Core, но какая версия?


person aidanh010    schedule 12.12.2018    source источник


Ответы (2)


Две концепции, одна из которых - хост / среда выполнения, которая поддерживает Функции Azure.

В настоящий момент среда выполнения Azure Function 2.0 основана на . Net Core 2.1 и ссылки Microsoft.AspNetCore.App v2.1.6.

Другой - пакет SDK для веб-заданий Azure, платформа, которая упрощает задачу написания кода для выполнения в среде выполнения функций Azure. Мы можем использовать HttpResult и IActionResult, потому что SDK ссылается на Пакеты ASP.NET (Core).

<PackageReference Include="Microsoft.AspNet.WebApi.Client" Version="5.2.4" />
<PackageReference Include="Microsoft.AspNetCore.Http" Version="2.1.0" />
<PackageReference Include="Microsoft.AspNetCore.Mvc.Formatters.Json" Version="2.1.0" />  
<PackageReference Include="Microsoft.AspNetCore.Mvc.WebApiCompatShim" Version="2.1.0" />
<PackageReference Include="Microsoft.AspNetCore.Routing" Version="2.1.0" />

И наш проект Function может быть нацелен на netcoreapp2.1 или netstandard2.0. Чтобы использовать API .Net Core, используйте netcoreapp2.1.

person Jerry Liu    schedule 12.12.2018

Согласно https://github.com/Azure/Azure-Functions/issues/686#issuecomment-389699549 Функции Azure не поддерживают понятие фреймворков, но стандартный интерфейс .NET.

Ваша функция должна быть нацелена на .NET Standard 2.0, который реализуется ядром dotnet 2.0 (https://docs.microsoft.com/en-us/dotnet/standard/net-standard)

См. Также https://github.com/dotnet/standard/milestone/3 - .NET Standard 2.1 недоступен или близок к выпуску.

person Markus Dresch    schedule 12.12.2018