首页后端开发ASP.NETASP.NET Core 3.1后项目文件与.NET Core2.X的变化异同说明

ASP.NET Core 3.1后项目文件与.NET Core2.X的变化异同说明

时间2023-03-24 17:30:27发布访客分类ASP.NET浏览966
导读:我们将讨论ASP.NET Core 3.0后项目文件中发生的更改。虽然我们的.NET 6的项目,但是涉及到这里的变化其实从ASP.NET Coe 3.x就变化了。如果您想知道项目文件的详细说明,请观看 ASP.NET MVC Core 基础...
我们将讨论ASP.NET Core 3.0后项目文件中发生的更改。

虽然我们的.NET 6的项目,但是涉及到这里的变化其实从ASP.NET Coe 3.x就变化了。

如果您想知道项目文件的详细说明,请观看 ASP.NET MVC Core 基础教程的第四章节。

项目文件扩展名您使用的编程语言确定项目文件的扩展名。如果C#是编程语言,则项目文件扩展名为.csproj。如果是Visual Basic,则为.vbproj。编辑项目文件

若要编辑项目文件,请在解决方案资源管理器中右键单击项目名称,然后从上下文菜单中选择“编辑项目文件”,

或者双击项目名称

ASP.NET Core 3.1项目文件

Project Sdk="Microsoft.NET.Sdk.Web">
    
    
      PropertyGroup>
    
        TargetFramework>
    netcoreapp3.1/TargetFramework>
    
      /PropertyGroup>
    
    
    /Project>
    
    
    
    ```



## ASP.NET Core 2.2项目文件
Project Sdk="Microsoft.NET.Sdk.Web">
    

  PropertyGroup>
    
    TargetFramework>
    netcoreapp2.2/TargetFramework>
    
    !--AspNetCoreHostingModel>
    InProcess/AspNetCoreHostingModel>
    -->
    
  AspNetCoreHostingModel>
    OutOfProcess/AspNetCoreHostingModel>
    
  /PropertyGroup>
    
/Project>
    



## ASP.NET Core 3.x项目文件中的新变化

在顶部,我们引用了`Microsoft.NET.Sdk.Web`。它这没有从ASP.NET Core 2.0更改为3.1。

TargetFramework节点指定要定位的框架。由于我们使用的是.NET Core 3.1,因此值为netcoreapp3.1。此值简称为**Target Framework Moniker**或**TFM**。

如果要调整为其他框架版本,请在.csproj文件中或通过项目属性窗口手动进行更改。

在.NET Core 2.2项目文件中,我们还需要手动对综合单元包进行引用(即Microsoft.AspNetCore.App)。

```

在.NET Core 3.0开始中,使用框架引用关系来替换综合元管理包,即(Microsoft.AspNetCore.App)。我们可以在解决方案资源管理器中看到对meta包的Framework引用。

ASP.NET Core 3.x中对 Microsoft.AspNetCore.App 的调整

如果你使用过 ASP.NET Core 2.X 那么应该知道在我们的项目文件有引入一个 NuGet 包,

Microsoft.AspNetCore.App

在 ASP.NET Core 3.0 开始,Microsoft.AspNetCore.App 包不在需要由项目文件引入,而是通过.NET Core sdk 包来直接进行管理,我们可以在项目的依赖性中看到他们,见如图 17.12:

通过下方的属性中的路径窗口,可以看到它所在位置,如果您看不见属性窗口,可以选择Microsoft.AspNetCore.App后按 F4 键,将它调出来。

然后我们复制路径中的地址: C:\Program Files\dotnet\packs\Microsoft.AspNetCore.App.Ref\6.0.0-preview.2.21154.6data\FrameworkList.xml

,打开该文件,信息如如图 17.13:

除了Microsoft.AspNetCore.App包以外,ASP.NET 开发团队,还删除了提供第三方媒体登录的软件包,这也是为什么从3.X我们需要单独安装一些额外的nuget包了。

例如 EntityFrameworkCore 程序包从3.X开始就需要手动安装了。

当然还有其他软件包也删除了。

访问以下链接以查看已删除软件包的完整列表。

https://github.com/aspnet/AspNetCore/issues/3755

如果我在项目中需要这些软件包怎么办。例如,我想要EntityFramework Core进行数据访问,那么如何包括它呢?

使用nuget软件包管理器安装所需的软件包,软件包参考将自动包含在项目文件中,如下所示。

ItemGroup>
    
      PackageReference Include="Microsoft.EntityFrameworkCore" Version="6.0.0-preview.2.21154.2" />
    
    /ItemGroup>
    
    
    ```

您可以通过使用nuget软件包管理器或手动编辑项目文件来安装nuget软件包。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

asp编程语言登录管理解决方案

若转载请注明出处: ASP.NET Core 3.1后项目文件与.NET Core2.X的变化异同说明
本文地址: https://pptw.com/jishu/267.html
ASP.NET WEB——项目中Cookie与Session的用法 ASP.NET Core技术--使用用户密码保护API接口

游客 回复需填写必要信息