项目升级,无缝对接 .NET 5

开启.NET5时代

2020-09-14

从NetCore1.1开始学起,然后又从2.0开始讲知识,再到将所有的在线项目升级并长期维护到3.1,转眼已经三年了,一直紧跟着微软的节奏有条不紊的往前走,我相信,只要是从18年末或者19年初跟着我的教程中的,肯定都已经学的可以了,今天开始我们就正式进入.NET5.x时代,当然官方还没有公布正式版(预计2020年11月发布正式版本,也就是一个月后,我项目的主分支会迁到.NET5上),不过8月25号的第预览版本已经出来了,基本已经差不多了,今天就尝试的升级一波,过程很简单,没有多余的不理解的知识点,就是无脑点鼠标就对了。

我的项目已经升级到了5.x,在GitHub单独分支,不过没有修改什么代码,仅仅是升级了,但是这恰恰是证明了NETCore3.1是和NET5是无缝对接的,这也是我当时在升级3.1的时候,对2.2的小伙伴说的那句话,别等了,如果要学,趁现在。

单独建立分支

只是把SDK和Nuget升级到最新了而已,其他不需要修改!

关于 .NET 5.0 的说明

随着多个版本的陆陆续续结束支持,慢慢的也进入新进旧去的时代

官方有个说法:

.NETCore是.Net的未来,而.NET5又是.NETCore的未来发展。

.NET 5 = .NET Core vNext

其实很多人学习都会先问一下,我为什么要学它,有什么好处,难不难,亮点是什么,我这块做的不是很好,因为我了解的不是很深入,net5也是这样的,我这里只是简单的了解了一下,当然它是完全兼容netcore3.1的,关于netcore3.1的好处,想必你肯定能够略知一二吧。

从ASP.NetCore3.0上看到很多改进,特别是从将MVC框架转移到ASP.NetCore作为平台上。这将允许跨不同框架(例如SignalR,gRPC服务,Blazor,Controller和Pages)重用功能。

.Net 5可以满足MQTT,AMQP,HTTP3和QUIC等更多协议的影响,由于它设计用于.Net Core运行时,

  • Java互操作性将在所有平台上可用。

  • 在多个操作系统上将支持Objective-C和Swift的互操作性。

  • CoreFX将得到扩展,以支持.NET的静态编译(提前-AOT),更小的占用空间以及对更多操作系统的支持。

.Net Core的未来版本ASP.NetCore运行的运行时(称.Net5)被指定为与Java,Objective C和Swift等其他语言具有更高的互操作性,使得过渡到.Net5很容易。

——摘抄网上,机译。

从上文看出来,有一个核心的就是和JAVA的互操作,这次是双向的哟,其他的一些更新你可以看看官网:

https://docs.microsoft.com/zh-cn/dotnet/core/compatibility/3.1-5.0?WT.mc_id=DOP-MVP-5003704

今天就快速的说一下,如果在电脑上使用.NET5,本文大篇幅都是在讲的如何安装,因此并不需要其他的多余知识,从官网上看.NET5要求vs2019必须的16.8版本的

其实如果运行.NET5,有两种方式,第一种是使用我们目前正在用的vs2019企业版,但是只能使用到.NET5的第七个预览版本(因为vs2019只能升级到16.7),如果想要尝试最新的第八版本,或者长远看来以后的话,可以尝试安装vs2019的预览版,我下面会分别讲解两个方案。

1、VS2019 安装.NET 5 Pre7

这种方案属于那种不想再安装软件的,不想再多做折腾的同学,直接将我们的vs2019升级到最新版本即可:

先更新vs installer

然后可以查看系统可升级的版本信息

点击更新,可能会提示2.2不再维护更新提示

因为我们知道,只有2.13.1才是LTS版本

然后点击“继续”,完成更新

中间可能会卸载的字样,不用理会,因为进度的前50%都是删除旧的,后50%会有新的下载并安装。

最后更新完成,你可以留心看看,系统盘并没有增加,我这里机会没变化。

然后开启SDK预览功能

接着安装.NET5的SDK

地址是:

https://dotnet.microsoft.com/download/dotnet/5.0

可以看到,官方还单独看了一个页面,看来net5真的要大一统了!

下载并安装完成

最后就可以在vs项目属性中,查看到,已经检索出来了.NET5的SDK

最后把所有项目的框架都升级到5.0,并且也顺带着更新下nuget,然后编译运行,没有问题:

好啦,到这里就基本的没啥问题了,可以看到是无缝的对接的,我们并没有做其他的多余的操作,当然,.Net5带来的好处这里并没有体现太多,比如c#9.0还没体现出来,你可以自己尝试尝试。

2、VS2019 Pre安装.NET 5.0 Pre8

这里你可能会好奇,为啥我上边都已经弄好了,还要安装vs2019预览版呢,这里有两个好处,除了可以运行.NET5.0的第八个预览版以外,vs2019pre版本,还有其他的小功能,比如对内联参数名称提示的支持,这里先举两个小例子:

是不是很心动,不过目前还不是很完美,以后可能会更加完善,那下边咱们就安装一下vs2019的预览版本吧,开启方式见文末
PS:vs2019pre和vs2019是并行共存的哟,目前是这样的

下载并安装程序

https://docs.microsoft.com/en-us/visualstudio/releases/2019/release-notes-preview?WT.mc_id=DOP-MVP-5003704

勾选安装组件群(约6个G)

这里只勾选ASPNET和Web开发.NET桌面开发两项即可,

然后点击上边banner单个组件,第一个就是.NET5

然后大概半小时后安装成功,速度取决于你的电脑配置和网络配置

运行可执行文件

安装成功后,是看不到图标的,需要我们手动找到安装路径,然后添加快捷方式即可,可以看到图标已经发生了变化:

启动工具并运行项目

启动页面可以看到有一个预览字样

然后运行项目,没有任何问题,

然后开启上文说到的内置参数预览功能

好啦,今天就说到这里吧,过程很简单,只是想通过这个流程,给大家说一下,新的时代已经到来了,各位加油吧!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/307770.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小团队前端部署演化之路

前言 前端部署相对来说其实是一件非常容易的事情,无论是最原始的html页面,还是现在热门的三大框架,最后交付部署的时候,始终会是一些静态文件。虽然简单,但是对于不同的团队来说,都会在不同阶段有最适合他们…

GitHub 全域数字年报:携手推动开源世界的超级协作

2020年1月24日,Wuhan2020开源项目正式发起,在疫情期间累积吸引到了约3000余位技术志愿者以及近1000余位非技术志愿者在线上开展志愿行动与参与。Wuhan2020在成立后的约3个月时间内,通过开源协作的方式在互联网上开展志愿者支持与工作协同&…

leetcode53. 最大子数组和(暴力+贪心)

一:论语 追求利益的同时 我们需要控制度 就好比鹅厂的王者荣耀 赚的盆满钵满 坑坏了多少青少年 但是鹅厂早已经开始控制度了 二:题目 三:上码&#xff08;暴力贪心&#xff09; 1:暴力 class Solution { public:int maxSubArray(vector<int>& nums) {/**暴力解法…

Newbe.Claptrap-一套以“事件溯源”和“Actor模式”作为基本理论的服务端开发框架...

本文是关于 Newbe.Claptrap 项目主体内容的介绍&#xff0c;读者可以通过这篇文章&#xff0c;大体了解项目内容。轮子源于需求随着互联网应用的蓬勃发展&#xff0c;相关的技术理论和实现手段也在被不断创造出来。诸如 “云原生架构”、“微服务架构”、“DevOps” 等一系列关…

NCF框架揭秘直播来了!红包、抽奖、还有神秘嘉宾…(内含彩蛋)

盛派周三技术分享会直播开讲又来啦~为了更好地赋能开发者&#xff0c;盛派已将系统框架 SCF&#xff08;SenparcCoreFramework&#xff09;全部开源&#xff0c;收到了社区非常多的关注&#xff0c;现在 SCF 已正式更名为NCF&#xff08;NeuCharFramework&#xff09;&#xff…

leetcode45. 跳跃游戏 II

一:论语 己所欲 也要勿施于人 &#xff0c;每个人的经历和阅历都是不同的 你凭啥说你认为的很开心的事情 去要求别人呢 二:题目 三:上码 class Solution { public:int jump(vector<int>& nums) {/**思路:1.这里的难点就在于 我们需要判断下一步的的最远跳跃距离…

leetcode1005. K 次取反后最大化的数组和

一:论语 这个用在自己身上感觉值得反省&#xff0c;很多道理我都能明白 也能讲给别人听 但是很多时候 自己往往做的不好 而且还很容易 自我感动 最近真的很讨厌自己这样 不要自我感动 要正向积累 多去做 多去做 这只是个开始 然后慢慢的长进 再者就是坚持 二:题目 三:上码 …

.NET Core全Linux开发体验分享

“ 2016年.NET Core首个正式版本问世&#xff0c;如今已发布到了.NET Core3.1&#xff0c;再有2个月.NET5也将如约而至&#xff0c;跨平台开发已经快5年&#xff0c;然而很多人却还只是在Windows上用Visual Studio SQL Server去做.NET Core跨平台开发&#xff0c;欠缺对Linux的…

使用Microsoft Word2016无法正常对Latex文本转换的踩坑和解决方法

相信很多人都遇到像我一样的问题。word2016中&#xff0c;有latex的按钮&#xff0c;按ALT就可以开始写公式&#xff0c;复制粘贴latex公式之后&#xff0c;怎么就转换不了呢&#xff1f;就是如图这样的&#xff0c;左上角转换按钮为灰色。 上网找呀找&#xff0c;找了很多资料…

leetcode134. 加油站

一:论语 二&#xff1a;题目 三&#xff1a;上码(暴力解法超时 但方法二还是可以的) // class Solution { // public: // int canCompleteCircuit(vector<int>& gas, vector<int>& cost) { // /** // 思路:1.暴力解法,我们遍历所…

ffmpeg 硬件解码零拷贝unity 播放

ffmpeg硬件解码问题 ffmpeg 在硬件解码&#xff0c;一般来说&#xff0c;我们解码使用cuda方式&#xff0c;当然&#xff0c;最好的方式是不要确定一定是cuda&#xff0c;客户的显卡不一定有cuda&#xff0c;windows 下&#xff0c;和linux 下要做一些适配工作&#xff0c;最麻…

Git入门教程(一)

今天开始学习Git&#xff0c;所以就把每天学的东西写下来&#xff0c;不然真的太复杂&#xff0c;容易忘记呀。 这里推荐一个网站Webscripting2 — Serverside Webscripting — xx.git&#xff0c;英文一般般的都可以上去看看&#xff0c;我觉得非常直观。 首先Git&#xff0c;…

leetcode135. 分发糖果

一:论语 二:题目 三&#xff1a;上码 class Solution { public:int candy(vector<int>& ratings) {/**思路:1.这里我们分两次遍历(从左向右 从右向左)2.当我们从左向右遍历的时候 如果右边的评分比左边孩子分数高 那么右边孩子的糖果数上就在左边孩子糖果数上加一3.当…

Java国家/地区使用限制条款引发争议

喜欢就关注我们吧&#xff01;今天 JDK/Java 15 发布&#xff08;看今天推送的头条&#xff09;&#xff0c;在 RI 包里有开发者发现其标注了一则国际使用限制条款&#xff1a;由于某些国家/地区的知识产权保护和执法有限&#xff0c;因此 JDK 源代码只能分发到授权的国家/地区…

反射的基本知识(详解)

一:反射的引出 1:问题 比如我们给出一个student类 其方法show(),我们将其写入配置文件中&#xff1b;现在我们来一个新的需求说是要改变重写一个show()方法 show()2,那么如何在不修改源码的情况下进行修改&#xff0c;这时我们通过反射就可以完成 2:过程 student类&#xf…

.NET 5.0 RC1 发布,离正式版发布仅剩两个版本,与 netty 相比更具竞争力

原文&#xff1a;http://dwz.win/Qf8作者&#xff1a;Richard翻译&#xff1a;精致码农-王亮说明&#xff1a;1. 本译文并不是完全逐句翻译的&#xff0c;存在部分语句我实在不知道如何翻译或组织就根据个人理解用自己的话表述了。2. 本文有不少超链接&#xff0c;由于微信公众…

一个例子带你搞懂python作用域中的global、nonlocal和local

在编程中&#xff0c;只要接触过函数的&#xff0c;我相信都理解什么是全局变量和局部变量&#xff0c;概念比较简单&#xff0c;这里就不做解释了。在python中&#xff0c;用global语句就能将变量定义为全局变量&#xff0c;但是最近又发现有个nonlocal&#xff0c;一时搞不太…

初识ABP vNext(10):ABP设置管理

点击上方蓝字"小黑在哪里"关注我吧定义设置使用设置前言上一篇介绍了ABP模块化开发的基本步骤&#xff0c;完成了一个简单的文件上传功能。通常的模块都有一些自己的配置信息&#xff0c;比如上篇讲到的FileOptions类&#xff0c;其中配置了文件的上传目录&#xff0…

类加载机制(整个过程详解)

一:背景 类加载机制是在我们的真个java的运行阶段中的其中一个阶段。 二:什么是快乐星球(类加载机制) 我们编写的 Java 文件都是以.java 为后缀的文件&#xff0c;编译器会将我们编写的.java 的文件编译成.class 文件&#xff0c;简单来说类加载机制就是jvm从文件系统将一系…

leetcode860. 柠檬水找零

一:论语 这里的小不忍指的是一方面我们受到挫折而控制不住自己而大发脾气&#xff0c;还有一方面指的是我们的过于优柔寡断&#xff0c;对于自己或者他人的过失&#xff0c;不忍心加以责罚。 二:题目 三:上码 class Solution { public:bool lemonadeChange(vector<int&g…