完整.NET Framework上的ASP.NET Core 2.1

ASP.NET Core 2.1 on full .NET Framework

是否可以使用ASP.NET Core 2.1并仍在完整的.NET Framework 4.7.1上运行?

我目前正在.NET 4.7.1上使用ASP.NET Core 2.0,并且在4.7.1上使用Azure函数v1,并在函数和Web项目之间共享类库。

考虑到Azure函数v2的当前状态,升级到Azure函数v2以在.NET核心上实现所有功能似乎有点太冒险了,因此我现在更希望留在.NET框架上。


对。

元包Microsoft.AspNetCore.AppMicrosoft.AspNetCore.All需要netcoreapp但它们只是要安装的其他包的集合。

如果您在metapackage中安装单独的软件包,它将正常工作,就像您当前使用的2.0一样。

您的.csproj文件最终将类似于此…

1
2
3
4
5
6
7
8
9
10
11
12
13
<Project Sdk="Microsoft.NET.Sdk.Web">
  <PropertyGroup>
    <TargetFramework>net471</TargetFramework>
  </PropertyGroup>
  <ItemGroup>
    <Folder Include="wwwroot" />
  </ItemGroup>
  <ItemGroup>
    <PackageReference Include="Microsoft.AspNet.WebApi.Client" Version="2.1.1" />
    <PackageReference Include="Microsoft.AspNetCore" Version="2.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.Antiforgery" Version="2.1.1" />
    <PackageReference Include="Microsoft.AspNetCore.Authentication" Version="2.1.1" />
    ...

请注意,有些包(如Microsoft.AspNetCore.Http.Connections没有标记为2.1.1),因此需要确保与元包约束的版本匹配。