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

时间:2018-06-27 15:19:09

标签: .net asp.net-core .net-core azure-functions asp.net-core-2.1

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

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

考虑到Azure Functions v2的当前状态,升级到Azure Functions v2以在.NET Core上全部使用似乎有些冒险,因此我宁愿暂时停留在.NET Framework上。

1 个答案:

答案 0 :(得分:13)

是的

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

如果您将单个软件包安装在metapackage中,则可以正常工作,就像您当前使用的是2.0

您的.csproj文件最终看起来与此类似...

<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,因此您需要确保匹配元数据包约束中的版本。