asp.net core 从 3.1 到 5.0

Intro

就在前几天,微软宣布了 .NET5 发布了 RC1 版本,这也意味着 .NET5 的开发基本稳定了,正式发布之前,不会再新增新的 Feature,只会专注于修复 BUG 提高稳定性。

对于开发者来说,RC版本的发布也意味着功能的稳定,可以上手尝尝鲜了,正式版的 API 不会再发生变化了,即使后面迁移到正式版也会很简单

于是尝试着把我之前练手的一个小项目 asp.net core webapi 的项目从 3.1 迁移到了 5.0,意想不到的顺利,要比 2.x 更新顺序的多

项目文件更新

首先需要更新项目的 TargetFramework 从原来的 netcoreapp3.1 变更到 net5.0

包引用更新

原来引用的 3.1.x 版本的 nuget 包更新成 5.0 的包

Docker 镜像更新

docker 镜像的更新分为两部分,一个是镜像名称,一个是镜像 tag

镜像 tag 比较好说,要从 3.1 更新成 5.0

镜像名称的变化是原来的镜像名称中有一个 core,在 net 5.0 中移除了,不再突出区分 core

具体的如下:

mcr.microsoft.com/dotnet/core/sdk => mcr.microsoft.com/dotnet/sdk

mcr.microsoft.com/dotnet/core/aspnet => mcr.microsoft.com/dotnet/aspnet

More

总体来说,更新还是相当顺利的,从 3.1 到 5.0,asp.net core 的 API 大多都是兼容的,没有特别大的变更(Blazor 除外,Blazor有一些大的变更),

只需要更新项目 Target 和包版本以及 dockerfile 中基本镜像的更新。

docker 镜像需要注意一下,不仅仅是改一下 tag,从 3.1 改成 5.0,最近我就是这样改的,结果提示找不到 tag,导致 build 失败了,

后来仔细看了一下,docker 镜像名称也发生了变化,移除了原来镜像名称中的 core,更好的体现了 target 的变化,无论是项目文件中的 TargetFramework 还是 docker 镜像都移除了名称中的 core,也正是体现了微软对于 .net core 的发展路线

后来突然想起来微软官方文档上应该有迁移文档,然后就赶紧去看一下,微软文档上已经有说明了 docker 镜像名称的变化(应该先看微软的官方文档才对。。。不要学我,要先看微软的文档)

Reference

asp.net core 从 3.1 到 5.0的更多相关文章

  1. IdentityServer4 ASP.NET Core的OpenID Connect OAuth 2.0框架学习保护API

    IdentityServer4 ASP.NET Core的OpenID Connect OAuth 2.0框架学习之保护API. 使用IdentityServer4 来实现使用客户端凭据保护ASP.N ...

  2. ASP.NET Core 2.2 迁移至 3.0 备忘录

    将 ASP.NET Core 2.2 迁移至 ASP.NET Core 3.0 需要注意的地方记录在这篇随笔中. TargetFramework 改为 netcoreapp3.0 <Target ...

  3. asp.net core 支付宝支付( 电脑2.0)

    支付宝电脑支付实测在手机浏览器也可以唤醒手机支付宝进行支付,因此也可以作为支付宝手机web支付方式.支付宝电脑支付流程为使用支付宝官方sdk通过获取的支付宝参数构造DefaultAopClient实例 ...

  4. ASP.NET Core 2.2 项目升级至 3.0 备忘录

    将 ASP.NET Core 2.2 迁移至 ASP.NET Core 3.0 需要注意的地方记录在这篇随笔中. TargetFramework 改为 netcoreapp3.0 <Target ...

  5. 从 ASP.NET Core 3.1 迁移到 5.0

    3月中旬,微软官方已经发布了dotnet 5的第一个预览版:5.0.0-preview.1. dotnet core经过前几个版本的发展和沉淀,到3.1已经基本趋于稳定. 所以从.net core 3 ...

  6. 【原创】Asp.NET Core Web API与Vue 3.0搭建前后分离项目

    特地记录一下,网上的教程写的稀里糊涂的,整得我都心塞塞的,其实实现的过程蛮简单的 问题是这样的:我将Vue构建生成好的文件,放在后端wwwroot文件里面,并开启静态文件访问功能,结果总是无法显示相应 ...

  7. ASP.NET Core MVC配置差异(3.0和2.X)

    https://www.cnblogs.com/lonelyxmas/p/10934388.html net core 2.x MVC配置 public void ConfigureServices( ...

  8. Asp.Net Core 2.2 - HTTP Error 500.0 - ANCM In-Process Handler Load Failure

    检查发布文件下是否存在runtime这个文件夹,如图

  9. ASP.NET Core 1.1 Preview 1 简介(包含.NETCore 1.1升级公告)

    ASP.NET Core 1.1 Preview 1于2016年10月25日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强. 要将现有项目更新到ASP.NET Core 1.1 Pre ...

随机推荐

  1. lvm常用指令

    1.物理卷命令一般维护命令:#pvscan //在系统的所有磁盘中搜索已存在的物理卷#pvdisplay 物理卷全路径名称 //用于显示指定物理卷的属性.#pvdata 物理卷全路径名称 //用于显示 ...

  2. 安国AU6989主控 + K9GBG08U0A(NAND) 制作4GB闪存驱动器

    文档标识符:AU6989_FLASH-DRIVE_D-P8 作者:DLHC 最后修改日期:2020.8.22 本文链接: https://www.cnblogs.com/DLHC-TECH/p/AU6 ...

  3. IE浏览器连接WebSocket报错:java.lang.IllegalArgumentException: Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986

    在项目开发中整合了WebSocket,本来没什么问题了,但是偶尔发现用IE浏览器打开web端不能推送消息,因为PC端与服务器建立连接失败了.网上查了很多资料, 又看了看源码,都不对症:又怀疑是Spri ...

  4. MySQL数据库根据一个或多个字段查询重复数据

    系统在开发测试过程中出现bug,比如并发操作没有处理好,数据库中往往会插入重复数据,这些脏数据经常会导致各种问题.bug可以修改,但是数据往往也要处理,处理SQL如下: 1.根据一个字段查找重复数据 ...

  5. 算法-排序(1)k路平衡归并与败者树

    const int MaxValue=; //根据实际情况选择最大值 void kwaymerge(Element *r,int k){ int i,q; r=new Element[k]; //在败 ...

  6. MPI计算π

    MPI计算\(\pi\) 利用公式 \[\int_0^1 \frac{4}{1+x^2}dx = \pi \] #include<stdio.h> #include<mpi.h> ...

  7. Docker 镜像构建之 Dockerfile

    在 Docker 中创建镜像最常用的方式,就是使用 Dockerfile.Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明.官方文档:https://d ...

  8. 面经手册 · 第7篇《ArrayList也这么多知识?一个指定位置插入就把谢飞机面晕了!》

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 数据结构是写好代码的基础! 说到数据结构基本包括:数组.链表.队列.红黑树等,但当你 ...

  9. Welcome To CUG_YZL's cnblogs

    Welcome To CUG_YZL's cnblogs  My name is YZL, studied in China University of Geosciences Wuhan now.W ...

  10. 从APP的启动说起

    iOS里面APP的启动,过程有些复杂,今天我们来抽丝剥茧,一步步探讨一下APP的启动会经历哪些过程. 首先,用户点击iPhone里面的某个APP的icon,Kernel内核会开始初始化空间并创建进程, ...