.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.pswp.cn/news/282737.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/282737.shtml
英文地址,請注明出處:http://en.pswp.cn/news/282737.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

html 字符串最后加空格,html space空格符

htmlcss 代碼在網頁中如何插入打出空格字符實現方法**摘要瀏覽器總是會截短 HTML 頁面中的空格。HTML將所有空格字符,制表符,空格和回車符壓縮為一個字符。如果要縮進段落,則不能簡單地鍵入五個空格然后開始文本。 如果您在文本中寫 10 個空格…

.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…

SQL Server中,with as使用介紹

一.WITH AS的含義 WITH AS短語,也叫做子查詢部分(subquery factoring),可以讓你做很多事情,定義一個SQL片斷,該SQL片斷會被整個SQL語句所用到。有的時候,是為了讓SQL語句的可讀…

從新手機到老股票 閑魚為何會淪為騙子與營銷的新平臺?

國內電商一直空缺一個有規模的綜合二手交易平臺。閑魚的出現,有一定程度上滿足了喜歡淘二手、喜歡“撿漏”的用戶需求。雖加入了擔保和第三方支付等環節,但這種隨機的二手交易行為不可避免地會出現上當、受騙的情況出現。本質上來說,閑魚仍然…

網上書店模板asp與html,一個簡單的網上書城的例子(三)_asp實例

buy.asp:顯示商品和用戶購物!DbPath SERVER.MapPath("ShopBag.mdb")Set conn Server.CreateObject("ADODB.Connection")conn.open "driver{Microsoft Access Driver (*.mdb)};dbq" & DbPathCategoryIDRequest("CategoryID…

使用C#編寫一個.NET分析器(一)

譯者注這是在Datadog公司任職的Kevin Gosse大佬使用C#編寫.NET分析器的系列文章之一,在國內只有很少很少的人了解和研究.NET分析器,它常被用于APM(應用性能診斷)、IDE、診斷工具中,比如Datadog的APM,Visual…

內置數據類型

Java語言提供了八種基本類型。六種數字類型(四個整數型,兩個浮點型),一種字符類型,還有一種布爾型。 byte: byte 數據類型是8位、有符號的,以二進制補碼表示的整數; 最小值是 -128&…

算法學習之循環結構程序設計

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;威力很強大 輸…

Linux常用命令 (分門別類)

一、系統安全: su: 用于切換當前用戶身份到其他用戶身份&#xff0c;變更時須輸入所要變更的用戶帳號與密碼 sudo: 用來以其他身份來執行命令&#xff0c;預設的身份為root lastlog: 用于顯示系統中所有用戶最近一次登錄信息 lastb: 用于顯示用戶錯誤的登錄列表&#x…

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為實現具體功能之腳…

[cogs347]地震

COGS&#xff1a;地震&#xff08;平衡樹&#xff09; COGS上一道題。。。文件名是equake 還是又打了一遍板子。。。 加個lazy標記就行了。。。 注意查詢時先下傳標記&#xff08;lazy&#xff09; // It is made by XZZ #include<cstdio> #include<algorithm> #de…

第八課-第二講 08_02_bash腳本編程之七 case語句及腳本選項進階

第八課-第二講 08_02_bash腳本編程之七 case語句及腳本選項進階 一. 面向過程控制結構順序結構選擇結構循環結構選擇結構if語句 單分支&#xff0c;雙分支&#xff0c;多分支case 語句 case語句:選擇結構 case SWITCH invalue1)---此處的value是當做字符來比較的statement....…

html表單提交按鈕怎么居中,與表單框一致,居中提交按鈕_html_開發99編程知識庫...

我嘗試將提交按鈕與表單的一個條目對齊失敗。 我只是希望提交按鈕稍微定位到窗體框的右側和中心。 現在是右邊&#xff0c;但在盒子的底部。我試圖回答相似的查詢&#xff0c;對於提交按鈕( 浮點&#xff0c;margin 等等 )&#xff0c;但是我不能找到正確的選擇。我的HTML如下所…

一個簡單的WebService服務

現在&#xff0c;網上提供的免費的webservice服務的網站&#xff1a; http://www.webxml.com.cn/從擴展名上看&#xff0c;是 .net構建的網站。看看功能的實現效果&#xff1a;需求&#xff1a;我們要遠程調用手機號歸屬地的查詢&#xff1a;開發步驟&#xff1a; 1&#xff0e…

Linux中的vi和vim

一、vi與vim的概念和區別 概念: 它們都是多模式編輯器&#xff0c;不同的是vim 是vi的升級版本&#xff0c;它不僅兼容vi的所有指令&#xff0c;而且還有一些新的特性在里面。 vim優勢主要體現在一下幾方面: 1、多級撤消 我們知道在vi里&#xff0c;按 u只能撤消上次命令&a…

[工具分享]備份SSAS模型TMSL腳本元數據工具,多給自己一點后悔藥可吃。

筆者在2019年分享過自己寫的一個小工具&#xff0c;用于備份Sqlserver數據庫的元數據。近期在一個PowerBI項目中&#xff0c;發現很有必要也備份下SSAS分析模型的元數據&#xff0c;防止不小心服務器壞了或使用Tabular Editor連接數據庫方式開發過程中&#xff0c;不小心覆蓋了…

UVA - 11181 數學

UVA - 11181 題意&#xff1a; n個人去買東西&#xff0c;其中第i個人買東西的概率是p[i],最后只有r個人買了東西&#xff0c;求每個人實際買了東西的概率 代碼&#xff1a; //在r個人買東西的概率下每個人買了東西的概率&#xff0c;這是條件概率&#xff0c;因為最多20個人可…

js時間戳轉成日期格式

//第一種2 function getLocalTime(nS) { 3 return new Date(parseInt(nS) * 1000).toLocaleString().replace(/:\d{1,2}$/, ); 4 } 5 alert(getLocalTime(1293072805));6 //結果是2010年12月23日 10:537 //第二種 8 function getLocalTime(nS) { 9 r…

計算機桌面去方格子,win7桌面office圖標變成白色方格圖標的原因和解法

win7系統開機發現桌面上所有office圖標變成白色方格圖標&#xff0c;其他程序圖標都正常顯示&#xff0c;是怎么回事呢&#xff1f;出現這樣的情況&#xff0c;一般是由于文件圖標緩存錯誤或者丟失導致&#xff0c;找打原因后該如何解決問題&#xff1f;可以通過記事本來解決此…