.NET 7 RC1 发布

原文链接:https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-1/[1]

原文作者:Jeremy Likness,Angelos Petropoulos,Jon Douglas

翻译:沙漠尽头的狼(谷歌翻译加持)

91a74e330b85a10e462b95ed74185831.jpeg

今天我们宣布 .NET 7 候选版本 1。这是生产中支持的 .NET 7 的两个候选版本 (RC) 中的第一个。

您可以下载适用于 Windows、macOS 和 Linux 的.NET 7 Release Candidate 1[2]

  • Installers and binaries[3]

  • Container images[4]

  • Linux packages[5]

  • Release notes[6]

  • Known issues[7]

  • GitHub issue tracker[8]

.NET 7 Release Candidate 1 已通过 Visual Studio 17.4 Preview 2 测试。如果您想在 Visual Studio 系列产品中试用 .NET 7,我们建议您使用预览通道版本[9]。如果您使用的是 macOS,我们建议使用最新的Visual Studio 2022 for Mac 预览版[10]

不要忘记.NET Conf 2022[11]。在 2022 年 11 月 8 日至 10 日与我们一起庆祝 .NET 7 的发布!

在本博客中,我们将重点介绍 .NET 7 的核心主题,并为您提供深入了解细节的资源。

要更详细地回顾 .NET 7 Release Candidate 1 中包含的所有功能和改进,请查看之前的 .NET 7 Preview 博客文章:

  • Announcing .NET 7 Preview 1[12]

  • Announcing .NET 7 Preview 2[13]

  • Announcing .NET 7 Preview 3[14]

  • Announcing .NET 7 Preview 4[15]

  • Announcing .NET 7 Preview 5[16]

  • Announcing .NET 7 Preview 6[17]

  • Announcing .NET 7 Preview 7[18]

.NET MAUI

.NET 多平台应用程序 UI (MAUI) 将 Android、iOS、macOS 和 Windows API 统一到一个 API 中,因此您可以编写一个在多个平台上本机运行的应用程序。.NET MAUI 使您能够提供由每个平台(Android、iOS、macOS、Windows 和 Tizen)专门设计的最佳应用体验,同时使您能够通过丰富的样式和图形打造一致的品牌体验。开箱即用,每个平台的外观和行为都符合其应有的方式,无需任何额外的小部件或样式。

作为 .NET 7 的一部分,.NET MAUI 提供了一个项目来处理跨设备及其平台的多目标。要了解有关生产力改进、工具和性能增强的更多信息,请查看以下资源:

  • Introducing .NET MAUI – One Codebase, Many Platforms[19]

  • Productivity comes to .NET MAUI in Visual Studio 2022[20]

  • Performance Improvements in .NET MAUI[21]

  • .NET Conf Focus on MAUI – That’s a wrap![22]

注意: 使用 .NET 7 试用 .NET MAUI 的 Visual Studio 体验将在即将发布的 17.4 Preview 2.1 版本中提供。

云原生

云原生是一组最佳实践,用于在云中构建应用程序,以利用弹性、可扩展性、效率和速度。

.NET 是构建云原生应用程序的绝佳选择。要了解有关 .NET 7 中的云原生功能和改进的更多信息,请查看以下资源:

  • Announcing built-in container support for the .NET SDK[23]

  • Announcing gRPC JSON transcoding for .NET[24]

  • .NET 7 comes to Azure Functions & Visual Studio 2022[25]

ARM64

ARM提供了小尺寸、卓越性能和高功率效率。

.NET 可帮助您构建在 ARM 设备上运行的应用程序。有关 .NET 7 在 ARM64 上运行速度的更多信息,请查看以下资源:

  • Arm64 Performance Improvements in .NET 7[26]

现代化

在现代版本的 .NET 上,您可以利用闪电般的性能和大量新功能来提高开发人员的生活质量。

为了使升级体验尽可能无缝,.NET 升级助手为您提供分步指导体验,通过分析和升级您的项目文件、代码文件和依赖项来现代化您的 .NET 应用程序。

有关 .NET 7 如何帮助您实现应用程序现代化的更多信息,请查看以下资源:

  • Incremental ASP.NET to ASP.NET Core Migration[27]

  • Migrating from ASP.NET to ASP.NET Core in Visual Studio[28]

表现

.NET 很快。.NET 7 是目前最快的 .NET。.NET 7 对反射、堆栈替换 (OSR)、启动时间、本机 AOT、循环优化和许多其他领域进行了超过一千项影响性能的改进。

有关为什么 .NET 7 是目前最快的版本的更多信息,请查看以下资源:

  • Performance Improvements in .NET 7[29]

  • Regular Expression Improvements in .NET 7[30]

Contributor spotlight: Filip Navara

向我们所有的社区成员致以巨大的“谢谢”。我们非常感谢您的周到贡献。我们请贡献者@filipnavara[31]分享他的想法。

b15b3d570af73a3975604c52f72bc638.jpeg

filipnavara

用菲利普自己的话说:

我从小就开始玩电脑。在拜访我爷爷的时候,我经常看到他在 BASIC 做他的工作。他正在编写工厂自动化软件,我从他那里继承了我对所有技术事物的热爱。DOS 是当时的标准系统,而 Borland 主导了编程工具。我想了解编程的工作原理并学习它。我固执地拒绝了他的所有建议,不得不自己通过反复试验来学习一切。这很愚蠢,但看到这些小程序变得生动起来很有趣。

渐渐地,我开始用不同的语言编程,探索互联网,然后是开源世界。我最喜欢在编译器、操作系统或系统模拟器等低级软件上进行编码。在高中的业余时间,我为 Wine、ReactOS、QEMU、Binutils 和 MinGW 编译器工具集等项目做出了贡献。

当 .NET Framework 的第一个版本问世时,我立刻被吸引住了。它保证了我熟悉的 Delphi 的简单性,而且 C# 语言学习起来真的很有趣。时机恰到好处,因为我和朋友们开始了一个开发电子邮件客户端应用程序的小项目,我们都同意在 .NET 中构建它。那个应用程序,eM Client,让我在整个大学学习期间都忙得不可开交。直到今天,它仍然是我目前的项目;尽管团队已经壮大,但我的职责已经转移,而且我们有很多非常有才华的程序员来解除我的职责。

.NET 的开源对我们来说是一大福音,让很多事情变得更容易。如今,我可以更多地专注于业余项目,为 .NET 做贡献是自然而然的选择。它使我能够充分利用我的知识,从硬件的低级细节和操作系统内部,到我们的电子邮件应用程序构建的高级框架。

开放代码允许我推动一个项目将 WinForms 框架移植到 macOS(基于 Mono 代码,但在许多地方使用 Cocoa 原生控件)。当 .NET 5 统一计划开始实施时,我开始做出更多贡献。对于我们来说,Xamarin.Mac 和 Mono 等不同平台在我们在 Windows 上使用的 .NET 所支持的功能方面一直落后,这一直是我们的痛点。最初,我开始填补 Mono 基类库中的空白,它已经与 .NET Core 共享了一些代码。我意识到这种追赶游戏可能不是最佳解决方案,因此我开始探索其他选项,例如在 CoreCLR 上运行 Xamarin.Mac。它恰好发生在编写第一个 MonoVM(.NET 5+ 中的 Mono 运行时)提交的前几天。一旦我意识到发生了什么,我就加入了这个计划。所有这些工作都隐藏在 GitHub 上,几个月后在 Build 大会上发布了官方公告。看到进展令人激动,构建了我自己的 Xamarin 运行时构建,该构建运行在这个早期的统一 MonoVM 运行时上,显示了第一个 UI。最终,它甚至启动了我们的电子邮件客户端应用程序。这确实改变了我们的游戏规则。使用旧的 .NET Framework,我们无法在新功能发布时使用它们。新版本的部署需要数年时间才能赶上。现在我处于相反的境地,比其他人跑得更早!

这项关于运行时统一的工作现已成功结束,我们向客户发布了具有最新 .NET 6 的应用程序。但是,.NET 中的许多地方仍然可以改进,我喜欢与 .NET 团队的人一起工作。我尝试为每个版本驱动至少一个次要功能。对于 .NET 6,我专注于让 iOS 加密堆栈正常工作。对于 .NET 7,在网络团队的大力帮助下,我尝试了一个用于处理 Negotiate/Kerberos/NTLM 身份验证的 API。虽然它不是一个非常有吸引力或可见的功能,但它是长期的技术债务。单元和功能测试中缺少代码;ASP.NET 通过反射访问内部,对 NativeAOT 不友好;最重要的是,图书馆作者不得不使用复杂的方法来解决缺乏简单公共 API 的问题。

我真诚地希望在未来做出更多贡献,我很高兴看到其他贡献者找到他们感兴趣的领域,并使整个平台对每个人都更好!

支持

.NET 7 不是长期支持 (LTS) 版本,因此它将在发布之日起 18 个月内获得免费支持和补丁。重要的是要注意所有版本 LTS 的质量是否相同。唯一的区别是支撑的长度。有关 .NET 支持政策的更多信息,请参阅.NET 和 .NET Core 官方支持政策[32]

路线图

.NET 版本包括产品、库、运行时和工具,代表了 Microsoft 内外多个团队之间的协作。您可以通过阅读产品路线图了解有关这些领域的更多信息:

  • ASP.NET Core 7 and Blazor Roadmap[33]

  • EF 7 Roadmap[34]

  • ML.NET[35]

  • .NET MAUI[36]

  • WinForms[37]

  • WPF[38]

  • NuGet[39]

  • Roslyn[40]

  • Runtime[41]

结束

我们感谢[42]您对 .NET 的所有支持和贡献。请尝试 .NET 7 Release Candidate 1[43]并告诉我们您的想法!

参考资料

[1]

https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-1/: https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-rc-1/

[2]

.NET 7 Release Candidate 1: https://dotnet.microsoft.com/download/dotnet/7.0

[3]

Installers and binaries: https://dotnet.microsoft.com/download/dotnet/7.0

[4]

Container images: https://mcr.microsoft.com/catalog?search=dotnet/

[5]

Linux packages: https://github.com/dotnet/core/blob/master/release-notes/7.0/

[6]

Release notes: https://github.com/dotnet/core/tree/master/release-notes/7.0

[7]

Known issues: https://github.com/dotnet/core/blob/main/release-notes/7.0/known-issues.md

[8]

GitHub issue tracker: https://github.com/dotnet/core/issues

[9]

预览通道版本: https://visualstudio.com/preview

[10]

Visual Studio 2022 for Mac 预览版: https://visualstudio.microsoft.com/vs/mac/preview/

[11]

.NET Conf 2022: https://dotnetconf.net/

[12]

Announcing .NET 7 Preview 1: https://devblogs.microsoft.com/dotnet/announcing-net-7-preview-1/

[13]

Announcing .NET 7 Preview 2: https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-preview-2/

[14]

Announcing .NET 7 Preview 3: https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-preview-3/

[15]

Announcing .NET 7 Preview 4: https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-preview-4/

[16]

Announcing .NET 7 Preview 5: https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-preview-5/

[17]

Announcing .NET 7 Preview 6: https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-preview-6/

[18]

Announcing .NET 7 Preview 7: https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-preview-7/

[19]

Introducing .NET MAUI – One Codebase, Many Platforms: https://devblogs.microsoft.com/dotnet/introducing-dotnet-maui-one-codebase-many-platforms/

[20]

Productivity comes to .NET MAUI in Visual Studio 2022: https://devblogs.microsoft.com/dotnet/dotnet-maui-visualstudio-2022-release/

[21]

Performance Improvements in .NET MAUI: https://devblogs.microsoft.com/dotnet/performance-improvements-in-dotnet-maui/

[22]

.NET Conf Focus on MAUI – That’s a wrap!: https://devblogs.microsoft.com/dotnet/dotnet-conf-focus-on-maui-recap/

[23]

Announcing built-in container support for the .NET SDK: https://devblogs.microsoft.com/dotnet/announcing-builtin-container-support-for-the-dotnet-sdk/

[24]

Announcing gRPC JSON transcoding for .NET: https://devblogs.microsoft.com/dotnet/announcing-grpc-json-transcoding-for-dotnet/

[25]

.NET 7 comes to Azure Functions & Visual Studio 2022: https://devblogs.microsoft.com/dotnet/dotnet-7-comes-to-azure-functions/

[26]

Arm64 Performance Improvements in .NET 7: https://devblogs.microsoft.com/dotnet/arm64-performance-improvements-in-dotnet-7/

[27]

Incremental ASP.NET to ASP.NET Core Migration: https://devblogs.microsoft.com/dotnet/incremental-asp-net-to-asp-net-core-migration/

[28]

Migrating from ASP.NET to ASP.NET Core in Visual Studio: https://devblogs.microsoft.com/dotnet/introducing-project-migrations-visual-studio-extension/

[29]

Performance Improvements in .NET 7: https://devblogs.microsoft.com/dotnet/performance_improvements_in_net_7/

[30]

Regular Expression Improvements in .NET 7: https://devblogs.microsoft.com/dotnet/regular-expression-improvements-in-dotnet-7/

[31]

@filipnavara: https://github.com/filipnavara

[32]

.NET 和 .NET Core 官方支持政策: https://dotnet.microsoft.com/platform/support/policy/dotnet-core

[33]

ASP.NET Core 7 and Blazor Roadmap: https://github.com/dotnet/aspnetcore/issues/39504

[34]

EF 7 Roadmap: https://docs.microsoft.com/ef/core/what-is-new/ef-core-7.0/plan

[35]

ML.NET: https://github.com/dotnet/machinelearning/blob/main/ROADMAP.md

[36]

.NET MAUI: https://github.com/dotnet/maui/wiki/Roadmap

[37]

WinForms: https://github.com/dotnet/winforms/blob/main/docs/roadmap.md

[38]

WPF: https://github.com/dotnet/wpf/blob/main/roadmap.md

[39]

NuGet: https://github.com/NuGet/Home/issues/11571

[40]

Roslyn: https://github.com/dotnet/roslyn/blob/main/docs/Language%20Feature%20Status.md

[41]

Runtime: https://github.com/dotnet/core/blob/main/roadmap.md

[42]

感谢: https://dotnet.microsoft.com/thanks

[43]

尝试 .NET 7 Release Candidate 1: https://dotnet.microsoft.com/download/dotnet/7.0

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

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

相关文章

.NET MAUI实战 FilePicker

1.概要最近在迁移 GeneralUpdate.Tool的时候需要用到文件选择,在MAUI中可以使用FilePicker进行选择。ref1: https://gitee.com/Juster-zhu/GeneralUpdateref2:https://docs.microsoft.com/zh-cn/dotnet/maui/platform-integration/storage/file-picker?tabswindows…

从新手机到老股票 闲鱼为何会沦为骗子与营销的新平台?

国内电商一直空缺一个有规模的综合二手交易平台。闲鱼的出现,有一定程度上满足了喜欢淘二手、喜欢“捡漏”的用户需求。虽加入了担保和第三方支付等环节,但这种随机的二手交易行为不可避免地会出现上当、受骗的情况出现。本质上来说,闲鱼仍然…

使用C#编写一个.NET分析器(一)

译者注这是在Datadog公司任职的Kevin Gosse大佬使用C#编写.NET分析器的系列文章之一,在国内只有很少很少的人了解和研究.NET分析器,它常被用于APM(应用性能诊断)、IDE、诊断工具中,比如Datadog的APM,Visual…

算法学习之循环结构程序设计

for循环 打印1,2,3&#xff0c;...&#xff0c;n每个占一行。 #include <conio.h> #include<stdio.h> int main(){int i,n;scanf("%d",&n);for(i1;i<n;i){printf("%d\n",i);}getch();return 0; } 分支结合循环&#xff0c;威力很强大 输…

hibernate自定义校验器使用(字段在in范围之内)

2019独角兽企业重金招聘Python工程师标准>>> 1.自定义注解类DigitsMustIn Constraint(validatedBy DigitsMustInValidator.class) //具体的实现 Target({java.lang.annotation.ElementType.METHOD,java.lang.annotation.ElementType.FIELD}) Retention(java.lang.a…

sql将html转成excel,使用SQL*PLUS,构建完美excel或html输出

通过SQL*PLUS我们可以构建友好的输出&#xff0c;满足多样化用户需求。本例通过简单示例&#xff0c;介绍通过sql*plus输出xls&#xff0c;html两种格式文件.首先创建两个脚本:1.main.sql用以设置环境&#xff0c;调用具体功能脚本2.功能脚本-get_tables.sql为实现具体功能之脚…

一个简单的WebService服务

现在&#xff0c;网上提供的免费的webservice服务的网站&#xff1a; http://www.webxml.com.cn/从扩展名上看&#xff0c;是 .net构建的网站。看看功能的实现效果&#xff1a;需求&#xff1a;我们要远程调用手机号归属地的查询&#xff1a;开发步骤&#xff1a; 1&#xff0e…

[工具分享]备份SSAS模型TMSL脚本元数据工具,多给自己一点后悔药可吃。

笔者在2019年分享过自己写的一个小工具&#xff0c;用于备份Sqlserver数据库的元数据。近期在一个PowerBI项目中&#xff0c;发现很有必要也备份下SSAS分析模型的元数据&#xff0c;防止不小心服务器坏了或使用Tabular Editor连接数据库方式开发过程中&#xff0c;不小心覆盖了…

计算机桌面去方格子,win7桌面office图标变成白色方格图标的原因和解法

win7系统开机发现桌面上所有office图标变成白色方格图标&#xff0c;其他程序图标都正常显示&#xff0c;是怎么回事呢&#xff1f;出现这样的情况&#xff0c;一般是由于文件图标缓存错误或者丢失导致&#xff0c;找打原因后该如何解决问题&#xff1f;可以通过记事本来解决此…

Kong入门学习实践(1)基础概念快览

【API网关】| 总结/Edison Zhou最近在学习Kong网关&#xff0c;因此根据老习惯&#xff0c;我会将我的学习过程记录下来&#xff0c;一来体系化整理&#xff0c;二来作为笔记供将来翻看。由于我司会直接使用Kong企业版&#xff0c;学习过程中我会使用Kong开源版。什么是Kong&am…

条件锁

ReentrantLock类有一个方法newCondition用来生成这个锁对象的一个条件&#xff08;ConditionObject&#xff09;对象&#xff0c;它实现了Condition接口。Condition提供了线程通讯的一套机制await和signal等线程间进行通讯的方法。。1、适用场景当某线程获取了锁对象&#xff0…

计算机应用技术 平面设计,全国信息化计算机应用技术水平教育考试试卷 平面设计师...

科目编号&#xff1a;4233全国信息化计算机应用技术水平教育考试试卷(考试时间&#xff1a;180分钟 考试总分&#xff1a;100分 专业认证课程&#xff1a;Photoshop 平面设计)注意事项1、 请首先按要求在试卷的标封处填写您的姓名、考号等&#xff1b;2、 请仔细阅读各种题目的…

RabbitMQ之消息模式简单易懂,超详细分享

前言上一篇对RabbitMQ的流程和相关的理论进行初步的概述&#xff0c;如果小伙伴之前对消息队列不是很了解&#xff0c;那么在看理论时会有些困惑&#xff0c;这里以消息模式为切入点&#xff0c;结合理论细节和代码实践的方式一起来学习。正文常用的模式有Simple、Work、Fanout…

jvm系列(八):jvm知识点总览

在江湖中要练就绝世武功必须内外兼备&#xff0c;精妙的招式和深厚的内功&#xff0c;武功的基础是内功。对于武功低&#xff08;就像江南七怪&#xff09;的人&#xff0c;招式更重要&#xff0c;因为他们不能靠内功直接去伤人&#xff0c;只能靠招式&#xff0c;利刃上优势来…

计算机基础知识的文献,四 计算机文献检索基础知识(原理、结构和功能)

1.计算机检索原理计算机一方面接受用户的检索提问&#xff0c;一方面从数据库中读取文献记录&#xff0c;然后把两者进行比较&#xff0c;即检索提问标识与文献记录标识进行匹配运算&#xff0c;如果比较的结果一致&#xff0c;那么这篇文献就会作为命中文献在检索结果中显示&a…

C# 基于.NET6的CM+Fody+HC入门实战项目(经典)

概述上期我们概述了CMFodyHC&#xff0c;如果之前没有阅读&#xff0c;可以先了解下&#xff1a;C# 为什么说CMFodyHC是WPF开发的最强组合&#xff1f;今天基于最新的VS版本、最新的CM框架版本&#xff0c;.NET基于6.0&#xff0c;搭建了一个WPF入门学习项目实例&#xff0c;关…

Kong入门学习实践(2)实验环境搭建

【API网关】| 总结/Edison Zhou最近在学习Kong网关&#xff0c;因此根据老习惯&#xff0c;我会将我的学习过程记录下来&#xff0c;一来体系化整理&#xff0c;二来作为笔记供将来翻看。由于我司会直接使用Kong企业版&#xff0c;学习过程中我会使用Kong开源版。本篇&#xff…

我的未来计算机作文,我的未来作文(精选4篇)

我的未来作文(精选4篇)在平平淡淡的日常中&#xff0c;大家总免不了要接触或使用作文吧&#xff0c;作文根据体裁的不同可以分为记叙文、说明文、应用文、议论文。怎么写作文才能避免踩雷呢&#xff1f;以下是小编收集整理的我的未来作文&#xff0c;仅供参考&#xff0c;大家一…

RDS for MySQL Mysqldump常见问题及处理

2019独角兽企业重金招聘Python工程师标准>>> 摘要&#xff1a; RDS for MySQL Mysqldump 常见问题和处理 GTID 特性相关 避免表级锁等待 设置导出字符集 其他导出时需要注意的选项 举例 RDS for MySQL 不支持的选项 RDS for MySQL 逻辑备份 1. GTID 特性相关 MySQ…

《ASP.NET Core 6框架揭秘》实例演示[27]:ASP.NET Core 6 Minimal API的模拟实现

Minimal API仅仅是在基于IHost/IHostBuilder的服务承载系统上作了小小的封装而已&#xff0c;它利用WebApplication和WebApplicationBuilder这两个类型提供了更加简洁的API&#xff0c;同时提供了与现有API的兼容。[本文节选《ASP.NET Core 6框架揭秘》第17章]一、基础模型二、…