真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

ASP.NETCore3.0遷移的示例分析-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關(guān)ASP.NET Core 3.0遷移的示例分析的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。

創(chuàng)新互聯(lián)公司專業(yè)為企業(yè)提供博樂網(wǎng)站建設(shè)、博樂做網(wǎng)站、博樂網(wǎng)站設(shè)計(jì)、博樂網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、博樂企業(yè)網(wǎng)站模板建站服務(wù),十多年博樂做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

一.前言

.NET Core 3.0將會(huì)在 .NET Conf 大會(huì)上正式發(fā)布,截止今日發(fā)布了9個(gè)預(yù)覽版,改動(dòng)也是不少,由于沒有持續(xù)關(guān)注,今天將前面開源的動(dòng)態(tài)WebApi項(xiàng)目遷移到.NET Core 3.0還花了不少時(shí)間踩坑,給大家分享一下我在遷移過程中遇到的坑。遷移的版本是當(dāng)前Release新版本 .NET Core 2.2 到 .NET Core 3.0 Preview 9。

二.ASP.NET Core 項(xiàng)目遷移

官方遷移文檔:從 ASP.NET Core 2.2 遷移到3.0 ,這個(gè)官方文檔比較詳細(xì),但是有一些東西里面并沒有寫。

1.更改框架版本

將 TargetFramework 版本改為netcoreapp3.0

ASP.NET Core 3.0遷移的示例分析

2.移除Nuget包

移除所有 Nuget包

ASP.NET Core 3.0遷移的示例分析

將其余 Nuget 包更新到支持 .NET Core 3.0 版本

3.Program更改

 public class Program
 {
  public static void Main(string[] args)
  {
   CreateHostBuilder(args).Build().Run();
  }

  public static IHostBuilder CreateHostBuilder(string[] args) =>
   Host.CreateDefaultBuilder(args)
    .ConfigureWebHostDefaults(webBuilder =>
    {
     webBuilder.UseStartup();
    });
 }

ASP.NET Core 3.0遷移的示例分析

4.Startup更改

ConfigureServices 方法:

services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2); 改為services.AddControllers()(WebApi) /services.AddControllersWithViews();(MVC)

ASP.NET Core 3.0遷移的示例分析

Configure 方法:

1、該方法里獲取Host環(huán)境信息接口類型,IHostingEnvironment改為IWebHostEnvironment

ASP.NET Core 3.0遷移的示例分析

2、app.UseMVc 改為:

WebApi:

  app.UseRouting();

      app.UseAuthorization();

      app.UseEndpoints(endpoints =>
      {
        endpoints.MapControllers();
      });

MVC:

  app.UseRouting();

      app.UseAuthorization();

      app.UseEndpoints(endpoints =>
      {
        endpoints.MapControllerRoute(
          name: "default",
          pattern: "{controller=Home}/{action=Index}/{id?}");
      });

關(guān)于Json組件

ASP.NET Core 3.0 默認(rèn)移除了Newtonsoft.Json ,使用了微軟自己實(shí)現(xiàn)的System.Text.Json,如果要改為 Newtonsoft.Json ,那么有以下兩步:

1.安裝Nuget包:

Install-Package Microsoft.AspNetCore.Mvc.NewtonsoftJson

2.注冊

services.AddControllers().AddNewtonsoftJson();

三.類庫(Class Library Net Standard 2.0)項(xiàng)目遷移

因?yàn)?ASP.NET Core 3.0 對元包機(jī)制的改動(dòng),現(xiàn)在不能通過nuget安裝 Microsoft.AspNetCore.All 或者 Microsoft.AspNetCore.App 3.0版本,以及他們包含的大多數(shù)Nuget包也不能通過nuget安裝了(沒有3.0對應(yīng)的版本)。如果說還引用2.2版本的nuget包,那么運(yùn)行起來可能會(huì)出錯(cuò)。元包被包含在了 .NET Core SDK中,這意味著如果我們的類庫項(xiàng)目依賴了 AspNetCore 相關(guān)組件,那么將沒法繼續(xù)將項(xiàng)目目標(biāo)框架設(shè)置為 .NET Standard 了,只能設(shè)置為.NET Core 3.0,因?yàn)?ASP.NET Core 3.0 only run on .NET Core 。

元包機(jī)制改動(dòng)原因:https://github.com/aspnet/AspNetCore/issues/3608

ASP.NET Core 3.0遷移的示例分析

1.更改框架版本

ASP.NET Core 3.0遷移的示例分析

2.更新Nuget包

移除 Microsoft.AspNetCore.* 不具有 .NET Core 3.0 的版本,例如:

ASP.NET Core 3.0遷移的示例分析

添加 FrameworkReference(不是 PackageReference) 引用:

ASP.NET Core 3.0遷移的示例分析

感謝各位的閱讀!關(guān)于“ASP.NET Core 3.0遷移的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!


本文名稱:ASP.NETCore3.0遷移的示例分析-創(chuàng)新互聯(lián)
標(biāo)題URL:http://weahome.cn/article/dsppsh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部