.NET周報【11月第2期 2022-11-15】

國內文章

統一的開發平臺.NET 7正式發布

https://www.cnblogs.com/shanyou/archive/2022/11/09/16871945.html

在 2020 年規劃的.NET 5功能終于在.NET 7 完成了,為微軟和社區一起為多年來將不同的開發產品統一起來的努力加冕,未來只有一個.NET, 回顧.NET 20年,從.NET Framework –> .NET Core –>.NET 一個產品命名可以反映出.NET的發展脈絡,從封閉走向開放,猶如歷史中的各種撥亂反正的演進......

.NET 7 AOT 的使用以及 .NET 與 Go 互相調用

https://www.cnblogs.com/whuanle/p/16875679.html

本文主要介紹如何在 .NET 和 Go 語言中如何生成系統(Windows)動態鏈接庫,又如何從代碼中引用這些庫中的函數。在 .NET 部分,介紹如何使用 AOT、減少二進制文件大小、使用最新的 [LibraryImport] 導入庫函數;在 Go 語言部分,介紹如何使用 GCC 編譯 Go 代碼、如何通過 syscall 導入庫函數。在文章中會演示 .NET 和 Go 相互調用各自生成的動態鏈接庫,以及對比兩者之間的差異。

.NET性能優化-是時候換個序列化協議了

https://www.cnblogs.com/InCerry/p/Dotnet-Perf-Opt-Serialization-Protocol.html

本文主要介紹了序列化協議對.NET程序性能的影響,以及對主流的.NET序列化框架進行序列化、反序列化速度、內存分配、序列化后大小的評測,找出如果我們不用JSON,那應該使用什么序列化協議的思考。

一個超經典 WinForm 卡死問題的再反思

https://www.cnblogs.com/huangxincheng/p/16868486.html

這篇文章起源于昨天的一位朋友發給我的dump文件,說它的程序出現了卡死,看了下程序的主線程棧,居然又碰到了 OnUserPreferenceChanged 導致的掛死問題,真的是經典中的經典,線程棧如下.......

[炫麗]從0開始做一個WPF+Blazor對話小程序

https://www.cnblogs.com/Dotnet9-com/p/16868009.html

大家好,我是沙漠盡頭的狼。.NET是免費,跨平臺,開源,用于構建所有應用的開發人員平臺。本文演示如何在WPF[1]中使用Blazor[2]開發漂亮的UI,為客戶端開發注入新活力。

關于ASP.NET Core WebSocket實現集群的思考

https://www.cnblogs.com/wucy/p/16857160.html

提到WebSocket相信大家都聽說過,它的初衷是為了解決客戶端瀏覽器與服務端進行雙向通信,是在單個TCP連接上進行全雙工通訊的協議。本篇文章就來和大家分享一下基于ASP.NET Core原生WebSocket的方式實現集群的實現思路。

關于.Net和Java的看法-一個小實習生經歷

https://www.cnblogs.com/xiaofangcode/p/16871193.html

筆者是一個專科院校的一名普通學生,目前就職于某三線城市的WEB方面.Net開發實習生,在找實習期間和就業期間的一些看法,發表此文,純個人想法,歡迎討論,指正!哈哈輕點噴......

.NET 7.0 重磅發布及資源匯總

https://www.cnblogs.com/SavionZhang/archive/2022/11/09/16872493.html

2022-11-8 .NET 7.0 作為微軟的開源跨平臺開發平臺正式發布。微軟在公告中表示.NET 7為您的應用程序帶來了C# 11 / F# 7,.NET MAUI,ASP.NET Core/Blazor,Web API,WinForms,WPF等的性能和新功能,。借助 .NET 7,您還可以輕松容器化 .NET 7 項目,在 GitHub 操作中設置 CI/CD 工作流,并實現云原生可觀測性。

C#11之原始字符串

https://mp.weixin.qq.com/s/obervizSYjeCumzNNUIrNg

最近.NET7.0和C#11相繼發布,筆者也是第一時間就用上了C#11,其中C#11的有一個更新能解決困擾我多年的問題,也就是文章的標題原始字符串。在使用C#11的原始字符串時,發現的一些有意思的東西,超出了我原本對它的期待,話不多說,我們一起來看看。

微軟KV Store Faster如何巧妙實現1.6億ops

https://mp.weixin.qq.com/s/y_vGEnzCDCbfdOJjD6bdEA

微軟在2018 SIGMOD Transactions and Indexing Session 中發表了一篇名為《FASTER: A Concurrent Key-Value Store with In-Place Updates》的paper,文章提出了一種在更新密集,訪問模式多表現出時間局部性,允許工作集大于內存,訪問操作多為點讀,Blind Update以及Read Modify Write場景下的表現極佳的KV引擎,號稱單機QPS可以達到1.6億。

.NET 6.0 小知識之項目插件編寫

https://mp.weixin.qq.com/s/kc5djLlEXikUwLEpou89bA

實現一個可以動態加載,動態更新服務的插件需求。插件的好處是什么?我們可以編寫代碼來動態去替換或者增加現有服務接口等,使用得當的情況下風險小、操作方便。

.NET7 gRPC JSON轉碼+OpenAPI

https://mp.weixin.qq.com/s/hBmdz8L2h3pjP0fqvo-fmA

gRPC JSON 轉碼允許瀏覽器應用調用 gRPC 服務,就像它們是使用 JSON 的 RESTful API 一樣。

  • 瀏覽器應用不需要生成 gRPC 客戶端或了解 gRPC 的任何信息。

  • 通過使用 HTTP 元數據注釋 .proto 文件,可從 gRPC 服務自動創建 RESTful API。

  • 使應用可以同時支持 gRPC 和 JSON Web API,而無需重復為兩者生成單獨的服務。

數組還是HashSet?

https://mp.weixin.qq.com/s/iXx_NXXt8p7YUUs2F7lJBw

本文介紹了在元素很少的時候進行Contains操作應該使用數組還是HashSet,以及在不同元素數量時HashSet和數組的性能比較。

試試將.NET7編譯為WASM在Docker上運行

https://mp.weixin.qq.com/s/rYQm154Zykbmi0ZP-ACndw

本文介紹了WASM/WASI的原理,然后嘗試將.NET程序編譯為WASM,并在Windows和Docker最新的wasm runtime上運行。

還在手畫C#依賴關系圖嗎?快來試試這個工具吧!

https://mp.weixin.qq.com/s/IZBZR8FrTWs5WCussiY8Sg

還在手畫C#依賴關系圖嗎?快來試試這個工具吧!筆者最近見到了一個不錯的工具,可以讓大家在看代碼的時候一鍵生成C#依賴的類圖。非常適合編寫文檔、查看和學習開源項目設計時使用,比如下方就是筆者通過這個工具生成的Microsoft.Extensions.ObjectPool依賴圖,可以非常清晰明了的告訴我們類與類之間的關系。

基于 .NET 7 的 QUIC 實現 Echo 服務

https://mp.weixin.qq.com/s/sxHFuvelnJCpN8j9msX2Fw

隨著今年6月份的 HTTP/3 協議的正式發布,它背后的網絡傳輸協議 QUIC,憑借其高效的傳輸效率和多路并發的能力,也大概率會取代我們熟悉的使用了幾十年的 TCP,成為互聯網的下一代標準傳輸協議。在最新的 .NET 7 中,.NET 團隊公開了 Quic API,它是基于 MSQuic 庫來實現的 , 提供了開箱即用的支持,命名空間為 System.Net.Quic。

主題

.NET 7今天正式推出 - .NET Blog

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

.NET 7已經發布。這篇文章重申了對.NET 7中各種新功能和變化的總結。

  • 融合。

    • 支持64位的IBM Power平臺

    • 一個BCL(一個基礎類庫)

    • 新TFM

    • 本機支持ARM64

    • 在Linux上增強對.NET的支持

  • 現代

    • 持續的性能改進

    • 開發效率的提高,如容器優先的工作流程

    • 從同一代碼庫中構建移動和桌面應用程序

  • 云原生應用程序的.NET

    • Azure支持

    • 內置容器支持

    • Orleans 7

    • 可觀測性

    • 更容易構建和部署分布式云原生應用

  • 簡潔性

    • 通用數學

    • 原始字符串

    • .NET庫

    • 在C#11中編寫更簡單、更少的代碼

    • 為云原生應用程序改進HTTP/3和Minimal API

  • 業績

    • 棧上替換

    • 配置引導優化(PGO)

    • Native AOT

    • 大量的性能改進

由于有了標準期限支持,.NET 7將在發布后的18個月內得到支持。

宣布.NET 7中的ASP.NET Core - .NET博客

https://devblogs.microsoft.com/dotnet/announcing-asp-net-core-in-dotnet-7/

在.NET 7中宣布ASP.NET核心的文章。

這篇文章提供了以前關于新功能和變化的文章的鏈接集合。

.NET 7.0中Windows Forms的新內容 - .NET博客

https://devblogs.microsoft.com/dotnet/winforms-enhancements-in-dotnet-7/

關于.NET 7中Windows Forms的新功能和變化的文章。

  • 可訪問性的改進和修復

  • 高DPI和縮放的改進

  • 數據綁定的改進

  • COM包裝器和Native AOT

  • 其他變化。

宣布.NET MAUI for .NET 7全面上市 - .NET博客

https://devblogs.microsoft.com/dotnet/dotnet-maui-dotnet-7/

適用于.NET 7的.NET MAUI已被發布。

在.NET 7中,包括地圖控件,改進了移動端的渲染性能,并在桌面上進行了各種改進。

.NET 7中WPF的新特性 - .NET博客

https://devblogs.microsoft.com/dotnet/wpf-on-dotnet-7/

關于.NET 7中WPF的新功能和變化的文章。

  • 性能。

    • 裝箱/拆箱

    • 分配

    • 雜項

  • 無障礙設施

  • 修復缺陷

  • 升級基礎設施

Entity Framework Core 7 (EF7)今天發布 - .NET博客

https://devblogs.microsoft.com/dotnet/announcing-ef7/

Entity Framework Core 7(EF7)已經發布。

這篇文章重申了Entity Framework Core 7的新功能和變化。

  • JSON列

    • 使用LINQ進行JSON查詢

    • 使用SaveChanges更新JSON

    • 其他JSON列

  • 批量更新和刪除

  • 單行更新和刪除

  • 快速保存更改

    • 刪除不需要的事務

    • 插入多行

  • 每個具體類型的表(TPC)的繼承映射

  • 自定義數據庫優先的模板

    • 生成的實體類型的定制

  • 自定義模型構建規則

    • 刪除規則

    • 添加規則

  • 用于添加、更新和刪除的存儲程序的映射

  • 新的或改進的攔截器和事件

    • 物質化攔截

    • 延遲初始化的連接字符串

  • 各種小的改進

Entity Framework Core 7以.NET 6為目標,可在.NET 6(LTS)或.NET 7中使用。

宣布F# 7 - .NET博客

https://devblogs.microsoft.com/dotnet/announcing-fsharp-7/

關于F# 7的公告,現在可用于.NET 7。該文章介紹了以下特點。

  • 支持接口的靜態抽象成員

  • 更容易使用SRTP

  • 強制性財產檢查

    • init范圍和僅有的init屬性

  • 參考裝配支持

  • F#獨立的部署和Native AOT

歡迎來到C#11 - .NET博客

https://devblogs.microsoft.com/dotnet/welcome-to-csharp-11/

關于C# 11的公告,它現在可以在.NET 7中使用。該文章介紹了以下特點。

  • UTF-8字符串

  • 原始字符串

  • 對靜態成員的抽象化

  • 列表模式

  • 必要成員

宣布NuGet 6.4 - Signed, Central, Delivered - NuGet博客

https://devblogs.microsoft.com/nuget/announcing-nuget-6-4-signed-central-delivered/

NuGet 6.4已經發布。

NuGet 6.4包含在Visual Studio 2022和.NET 7中,也可以作為一個獨立的可執行文件下載。

這篇文章介紹了該版本所包括的以下方面

  • 中央軟件包管理現在可供操作使用。

  • 用GlobalPackageReference在任何地方使用一個PackageReference

    • 通過定義一個GlobalPackageReference將包添加到所有項目中

  • 提高了Visual Studio所有標簽中加載軟件包的性能

  • NuGet簽名包的驗證

  • 改進Visual Studio中的認證

  • NuGet.exe的本地化

Visual Studio 2022 17.4現在可用!

https://devblogs.microsoft.com/visualstudio/visual-studio-2022-17-4/

Visual Studio 2022的17.4版現在已經推出。

  • .NET 7

  • C++

  • Arm64

  • 回滾

  • 企業支持

    • LTSC支持

    • 來自Windows Updaet for Business的安全更新

    • 通過Visual Studio管理模板的管理政策

    • 刪除不支持的組件

  • 協作和團隊

    • Arm64擴展和VisualStudio.Extensibility擴展模型

    • Git工具

    • 發布多庫支持

    • 微軟團隊工具包

    • 生態系統

  • 生產力

    • 選擇匹配突出顯示

    • 音頻提示

    • 數據表可視化器

    • 呼叫堆棧窗口中的異常堆棧框架

    • 在測試資源管理器中清除和過濾測試結果

  • 業績

    • 測試搜索的平行化

    • 測試執行的有效并行化

    • 優化Visual Studio和測試運行器進程之間的通信

    • Git分支切換

    • 改進了文件保存響應

    • C++索引

    • 在文件中搜索和替換

    • 語言服務設置切換優化

    • 單元測試性能改進

關于Arm64支持和Windows Update for Business的更新以及Visual Studio回滾的更多信息,請參見以下詳細文章。

  • Arm64 Visual Studio正式來了! 博客[3]

  • 將Visual Studio更新部署到注冊在Windows Update for Business中的設備上 - Visual Studio 博客[4]

  • 介紹Visual Studio Rollback! 博客[5]

最后,它還通知說,下一個版本的預覽版,即Visual Studio 2022 17.5 Preview 1,現在也可以使用。

  • 支持Azure容器注冊中心和Azure容器應用程序

  • 支持SQL Server 2022

  • 對Markdown更深入的支持

  • 用正則表達式設置標簽顏色

  • 新的快速添加項目體驗

  • 集成終端作為網絡項目中的F5目標

  • 與Windows認證代理集成,以改進登錄方式

  • 對SDK風格項目的過程中VSIX支持

Visual Studio for Mac 17.4現已發布 - Visual Studio博客

https://devblogs.microsoft.com/visualstudio/visual-studio-17-4-is-now-available/

Visual Studio 2022 for Mac v17.4已經發布。

該版本包括停靠窗口、用戶界面改進,如字體和行距設置、調試器用戶界面改進、MAUI以及對.NET 7和C# 11的支持。

Visual Studio 2022 for Mac v17.5 Preview 1也已推出,并被吹捧為在運行時更新到.NET 7和改進字體支持。

宣布ML.NET 2.0 - .NET博客

https://devblogs.microsoft.com/dotnet/announcing-ml-net-2-0/

ML.NET 2.0和新版本的Model Builder已經發布。

  • 模型生成器中的文本分類情景

  • 句子相似性API

  • 代碼器支持

  • AutoML的改進

  • 模型生成器的高級設置

Orleans 7.0的新內容 - .NET博客

https://devblogs.microsoft.com/dotnet/whats-new-in-orleans-7/

Orleans 7.0已經發布。

Orleans 團隊成為.NET團隊的一部分,并與.NET 7合作,將性能提高了150%以上。文章討論了性能的改進、開發經驗的改善、簡化識別Grain和Stream的方法等。

.NET Conf 2022 - YouTube

https://www.youtube.com/playlist?list=PLdo4fOcmZ0oVlqu_V8EXUDDnPsYwemxjn

.NET Conf 2022的會議視頻播放列表,包括.NET 7的發布公告。

.NET信息泄露漏洞 - GHSA-8g2p-5pqh-5jmc - GitHub咨詢數據庫

https://github.com/advisories/GHSA-8g2p-5pqh-5jmc

在1.1.3和2.0.0至2.1.1版本的Microsoft.Data.SqlClient以及4.8.4版本的System.Data.SqlClient中發現信息泄露漏洞。

在高負荷下發生超時時,該漏洞可能會對異步執行的查詢返回不正確的結果。

在Microsoft.Data.SqlClient的1.1.4或2.1.2和System.Data.SqlClient的4.8.5中已經修復,如果你使用此類軟件包,需要進行更新。

.NET框架2022年11月安全和質量滾動更新 - .NET博客

https://devblogs.microsoft.com/dotnet/dotnet-framework-november-2022-security-and-quality-rollup-updates/

.NET框架的2022年11月安全和質量累積更新已經發布。

該版本修復了一個與Microsoft.Data.SqlClient有關的漏洞(如上圖)以及幾個與WPF和運行時有關的缺陷。

.NET 2022年11月更新 - .NET 6.0.11和.NET Core 3.1.31 - .NET博客

https://devblogs.microsoft.com/dotnet/november-2022-updates/

.NET 6.0.11和.NET Core 3.1.31已經發布。

它包括幾個錯誤和改進。這篇文章還重申了更新到.NET 6的建議,因為.NET Core 3.1將在今年12月13日停止支持(EOL)。

mysql-net/MySqlConnector v2.2.0

https://github.com/mysql-net/MySqlConnector/releases/tag/2.2.0

Async MySqlConnector 2.2.0已經發布。

這個版本包括對.NET 7的支持,取消了對.NET 4.5的支持以及其他一些改進。

Cake v3.0.0

https://cakebuildnet.medium.com/cake-v3-0-0-released-b5555129a0f5

Cake v3.0.0已經發布。

該版本支持.NET 7和C# 11、TaskOf<T>、多目標支持、構建提供者的改進、對插件所依賴的Cake.Core版本的3.0建議,以及其他一些改進和修復。

NuGet中央軟件包管理來到JetBrains Rider | The .NET Tools Blog

https://blog.jetbrains.com/dotnet/2022/11/07/nuget-central-package-management-comes-to-jetbrains-rider/

宣布在Rider中支持NuGet的中央包管理。

你現在可以用Rider 2022.3 EAP和支持NuGet 6.2或更高版本的SDK來試試。這篇文章展示了如何設置它以及中央包管理的一些提示。

Windows社區工具包實驗室的實驗在這里!

https://devblogs.microsoft.com/ifdef-windows/windows-community-toolkit-labs-experiments-are-here/

關于Windows社區工具包實驗室的文章。

Windows Community Toolkit Labs是一個實驗性實現的圖書館,然后才被納入Windows Community Toolkit。文章介紹了諸如Rive播放器、配置卡和配置擴展器等控件,以及如何使用WCT實驗室。

npgsql/npgsql ?v7.0.0

https://github.com/npgsql/npgsql/releases/tag/v7.0.0

Npgsql 7.0.0已經發布。

  • NpgsqlDataSource,它實現了DbDataSource。

  • 通過Microsoft.Extensions.Logging改進了日志記錄。

  • 支持邏輯復制協議版本3

  • 一些破壞性的變化。

Azure靜態Web應用程序現在完全支持.NET 7 | Azure更新 | Microsoft Azure

https://azure.microsoft.com/en-us/updates/generally-available-azure-static-web-apps-now-fully-supports-net-7/

現在Azure靜態網絡應用程序支持.NET 7。

我們可以使用.NET 7 Blazor WebAssembly應用程序并使用.NET 7 Blazor構建Azure函數。

宣布.NET 7 for Azure函數隔離工作者進程 - Microsoft Community Hub

https://techcommunity.microsoft.com/t5/apps-on-azure-blog/announcing-the-net-7-for-azure-functions-isolated-worker-process/ba-p/3671398

現在,Azure Functions孤立的工作程序中已經支持.NET 7。

.NET 7 GA可用于應用服務 - Azure應用服務

https://azure.github.io/AppService/2022/11/08/dotnet7_ga.html

現在Azure App Service上支持.NET 7。

JetBrains .NET Days + GameDev Day Online 2022 - Session Recordings Available | The .NET Tools Blog

https://blog.jetbrains.com/dotnet/2022/11/10/dotnet-days-gamedev-day-online-2022-recordings/

10月下旬JetBrains的.NET和游戲開發在線活動的會議記錄現在可以獲得。

  • JetBrains .NET Days Online 2022 - YouTube[6]

  • [JetBrains GameDev Day Online 2022 - YouTube](

文章、幻燈片等。

C# | 2022年活動日歷 - Qiita

https://qiita.com/advent-calendar/2022/csharplang

齊塔公司2022年的C#活動日歷。

新版本的.NET SDK和Visual Studio更新 - tech.guitarrapc.cóm

https://tech.guitarrapc.com/entry/2022/11/10/004625

關于更新Visual Studio時如何處理.NET SDK的文章。

用.NET 7在Linux上構建WPF - tech.guitarrapc.cóm

https://tech.guitarrapc.com/entry/2022/11/11/031555

關于在Linux環境下用.NET 7 SDK構建WPF應用程序的文章。

Microsoft.CodeAnalysis.Analyzers在Visual Studio 2022 17.4及以上版本中發出警告。

https://zenn.dev/mayuki/articles/c4728ae9cdef8e

Visual Studio 2022 17.4及以上版本中Microsoft.CodeAnalysis.Analyzers警告的原因和解決方法。

如何用C#.NET使用DALL-E API

https://betterprogramming.pub/create-a-text-to-image-generator-using-dall-e-api-in-c-net-7df58d940e79

一篇關于從.NET中調用DALL-E的API來生成圖像的文章。

使用C#和Visual Studio的Teams Toolkit為Microsoft Teams建立一個股票更新通知機器人

https://dev.to/microsoft365/build-a-stock-update-notification-bot-for-microsoft-teams-using-c-and-teams-toolkit-for-visual-studio-mfl

關于如何使用Visual Studio的Teams Toolkit在C#中實現股票更新通知機器人的文章。

Redis作為一個數據庫的Redis OM

https://medium.com/@marius.munteann/redis-as-a-database-with-redis-om-2601a48b5c04

關于如何使用Redis OM將Redis當作數據庫的文章。

  • redis/redis-om-dotnet: Redis和.NET的對象映射,以及更多[7]

對ASP.NET Core Web API進行版本管理 - Qiita

https://qiita.com/gushwell/items/663538393baef926c4c4

關于如何使用Microsoft.AspNetCore.Mvc.Versioning進行API版本管理(如/v1/api,/v2/api等)的文章。

當我用AWS Lambda從.NET Core 3.1遷移到.NET 6時我做了什么 - Qiita

https://qiita.com/kaz-matsubara/items/7c3284dd6b38fe4489fb

文章介紹了我們在將AWS Lambda的.NET Core 3.1應用程序遷移到.NET 6時的做法。

.NET 7中關于認證和授權的新內容

https://auth0.com/blog/whats-new-in-dotnet-7-for-authentication-and-authorization/

文章總結了.NET 7中認證和授權的變化和新功能。

使用 ASP.NET Core 應用程序的影子拷貝避免 WebDeploy 鎖定 IIS 的錯誤

https://weblog.west-wind.com/posts/2022/Nov/07/Avoid-WebDeploy-Locking-Errors-to-IIS-with-Shadow-Copy-for-ASPNET-Core-Apps

關于使用WebDeploy部署在IIS中運行的ASP.NET Core應用程序時如何避免文件鎖定錯誤的文章。

這篇文章解釋了如何啟用影子復制(從.NET 6開始就可以實驗性地使用),以及如何進行WebDeploy。

開源庫、資源庫、工具等

mk3008/SqModel: Select query builder

https://github.com/mk3008/SqModel

  • 解析、處理和以其他方式重構SQL語句的庫。

  • https://zenn.dev/mkmonaka/articles/2e70c3c2354b45

推文


ASP.NET Core 對綠色線程(虛擬線程/Goroutine)的實驗性支持

https://twitter.com/davidfowl/status/1589859605508943873?s=20&t=hoFWdpO1noqmq9W_g80r3Q

David Fowler大佬正在讓.NET綠色線程(虛擬線程/Goroutine)試驗與Kestrel一起運行。這個東西很難展示,但這個調用堆棧讓他非常高興。

如下圖所示,方法棧的入口已經變為了GreenThreadStartFunc

bea6da6cdd06d2bef3e4a94f824b7a62.png
image-20221108144417863

.NET 官方網站重新設計的故事

https://twitter.com/davidpine7/status/1589819551977701377?s=12

d15d97ce7af38e6b57b1720846bfb19a.png
image-20221116191443869

盡管在WinForms中出現了一些nullable注解的編譯錯誤,但從.NET v5.0到.NET 7的編譯在五分鐘內就完成了

https://twitter.com/rickbrewpdn/status/1590059027945631744?s=12

a2fd2eb1f522cf0067bfb02b07dda867.png
image-20221116191635292

ASP.NET核心框架堆棧圖

https://twitter.com/davidfowl/status/1590165613506613248?s=12

d837665a7c418dae9bc7a1541a366834.png
image-20221116191823885

Akka.NET的故事在.NET 7(啟用PGO)的基準測試中更快。

https://twitter.com/aaronontheweb/status/1591474543339634691?s=12

4ab467eeced03539da6e93a2e6375a13.png
image-20221116191939928
c872c661c4c40bac58acd762c14840ca.png
image-20221116192052652
3c869b4c47da682c94cdeab9133a064f.png
image-20221116192025251

什么是用特定的分隔符拼接字符串的最快方法,請看.NET 7

https://twitter.com/DaveCallanIE/status/1591799079306203136

8873c7e5d02281595f3ad5d9a3291ab8.png
image-20221116192207509

版權聲明

  • 國內板塊由 InCerry 進行整理 : https://github.com/InCerryGit/WeekRef.NET/blob/master/input_zh-CN/2022/2022-11-15.md

  • 其余內容來自 Myuki WeekRef,由InCerry翻譯(已獲得授權) : https://github.com/mayuki/WeekRef.NET/blob/master/input/2022/2022-11-15.md

由于筆者沒有那么多時間對國內的一些文章進行整理,歡迎大家為《.NET周報-國內文章》板塊進行貢獻,需要推廣自己的文章或者框架、開源項目可以下方的項目地址提交Issue或者在我的微信公眾號私信。

格式如下:

  • 10~50字左右的標題

  • 對應文章或項目網址訪問鏈接

  • 200字以內的簡介,如果太長會影響閱讀體驗

https://github.com/InCerryGit/.NET-Weekly

參考資料

[1]

WPF: https://learn.microsoft.com/zh-cn/dotnet/desktop/wpf/overview/?view=netdesktop-6.0

[2]

Blazor: https://learn.microsoft.com/zh-cn/aspnet/core/blazor/?view=aspnetcore-7.0

[3]

Arm64 Visual Studio正式來了! 博客: https://devblogs.microsoft.com/visualstudio/arm64-visual-studio-is-officially-here/

[4]

將Visual Studio更新部署到注冊在Windows Update for Business中的設備上 - Visual Studio 博客: https://devblogs.microsoft.com/visualstudio/deploy-visual-studio-updates-to-devices-enrolled-in-windows-update-for-business/

[5]

介紹Visual Studio Rollback! 博客: https://devblogs.microsoft.com/visualstudio/introducing-visual-studio-rollback/

[6]

JetBrains .NET Days Online 2022 - YouTube: https://www.youtube.com/playlist?list=PLQ176FUIyIUbSS1HBVrqEyNHpfSh166KW

[7]

redis/redis-om-dotnet: Redis和.NET的對象映射,以及更多: https://github.com/redis/redis-om-dotnet

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/281191.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/281191.shtml
英文地址,請注明出處:http://en.pswp.cn/news/281191.shtml

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

相關文章

如何像使用AspNetCore中的Controllers 和 Actions一樣處理MQTT消息

在物聯網項目中&#xff0c; 處理MQTT的topic時費工費力&#xff0c; 代碼一團亂&#xff0c; 什么才是最好的姿勢&#xff1f;這里面我們極力介紹 MQTTnet.AspNetCore.Routing 項目&#xff0c;MQTTnet AspNetCore Routing 是https://github.com/Atlas-LiftTech/MQTTnet.AspN…

chrome 懸停大圖插件_Google Chrome瀏覽器的懸停卡:我不想要的我最喜歡的新東西

chrome 懸停大圖插件If you only have a handful of open tabs in Google Chrome, it’s easy to tell what they are. But as you start to collect more tabs (or make the window smaller), it gets harder. That’s where Hover Cards come in. 如果您在Google Chrome瀏覽器…

GitHub Codespaces 安裝 .NET 7

本文主要介紹如何在 GitHub Codespaces 這個云上 IDE 環境中安裝 .NET 7背景GitHub 的 Codespaces 可以讓我們隨時隨地編寫代碼&#xff0c;一些簡單的修改也非常方便快捷。特別是 .NET 7 發布后&#xff0c;一些可以直接升級的小項目只需要更改配置就可以了&#xff0c;我們可…

chrome怎么隱藏瀏覽器_如何使用Google Chrome的隱藏閱讀器模式

chrome怎么隱藏瀏覽器Chrome 75 has a hidden “Reader” mode that strips web pages down to the bare minimum to make them easier to, well, read. But it’s not enabled by default—here’s how to get it now. Chrome 75具有隱藏的“閱讀器”模式&#xff0c;可將網頁…

angularjs中使用swiper時不起作用,最后出現空白位

controller.js中定義swipers指令&#xff1a; var moduleCtrl angular.module(newscontroller,[infinite-scroll,ngTouch,news.service]) .directive(swipers,swipers); swipers.$inject [$timeout]; function swipers($timeout) {return {restrict: "EA",scope: {…

使用Jupyter記事本記錄和制作.NET可視化筆記

前言&#xff1a;對于記錄筆記的工具特別多&#xff0c;不過對于程序員來說&#xff0c;記錄筆記程序代碼運行結果演示可以同時存在&#xff0c;無疑會極大增加我們的筆記的可讀性和體驗感。以前在寫python的時候&#xff0c;使用jupyter的體驗很好&#xff0c;所以此處做一個基…

火狐上如何使用谷歌翻譯插件_將Google翻譯功能添加到Firefox

火狐上如何使用谷歌翻譯插件Are you looking for a quick no-fuss way to translate webpages? Then you will want to take a good look at the Translate extension for Firefox. 您是否正在尋找一種快速簡便的方法來翻譯網頁&#xff1f; 然后&#xff0c;您將需要很好地了…

Android 4.X 系統加載 so 失敗的原因分析

1 so 加載過程 so 加載的過程可以參考小米的系統工程師的文章loadLibrary動態庫加載過程分析 2 問題分析 2.1 問題 年前項目里新加了一個 so庫&#xff0c;但發現native 方法的找不到的 crash 好多&#xff0c;好些都是報了java.lang.unsatisfiedlinkerror native method not f…

桌面顯示激活windows_愚蠢的怪胎技巧:如何在桌面上顯示Windows版本

桌面顯示激活windowsHave you ever noticed during all the beta releases of Windows, there’s always a Windows version on the desktop in the lower right-hand corner? Here’s how that “feature” is enabled or disabled. 您是否曾經在Windows的所有beta版本中都注…

服務網格:限流保護 (上)

背景限流是服務治理中保護服務的重要手段之一&#xff0c;也是最直接有效的手段&#xff0c;它可以保護服務不被瞬間的大流量沖垮&#xff0c;類似電路中的“保險絲”。在服務上線前&#xff0c;我們都會對服務進行基準測試&#xff0c;來了解可通過的最大“電流”。上面所說的…

博弈論進階之Anti-SG游戲與SJ定理

前言 在上一節中&#xff0c;我們初步了解了一下SG函數與SG定理。 今天我們來分析一下SG游戲的變式——Anti-SG游戲以及它所對應的SG定理 首先從最基本的Anti-Nim游戲開始 Anti-Nim游戲是這樣的 有兩個頂尖聰明的人在玩游戲&#xff0c;游戲規則是這樣的&#xff1a; 有\(n\)堆…

怎樣取消outlook約會_快速提示:在Outlook 2010中設置和取消約會

怎樣取消outlook約會Getting everyone in one place at the same time for appointments can be daunting at times. Outlook makes it easy to setup appointments and invite attendees as well, and here we look at doing it in Outlook 2010. 同時讓每個人都集中在一個地方…

重視和解決 ABP 分布式事件亂序問題

ABP Framework 5.0 實現了單體應用場景下&#xff0c;收件箱和發件箱的事件嚴格順序性。但在微服務或多數據庫場景下&#xff0c;由于網絡時延和設施效率的限制&#xff0c; 分布式事件將不再是 Linearizability [1] 的&#xff0c;因此必然會存在物理時間上的收件亂序。借用 D…

個人博客建站方案推薦

1.服務器選擇 正值雙十一來臨之際各大服務器提供商又大量的優惠活動&#xff0c;各位要步入個人站長行列的小哥們時機要把握好了&#xff0c;我個人使用過阿里云的服務器&#xff0c;騰訊云的服務器&#xff0c;華為云的服務器。其實&#xff0c;個人感覺就放個博客&#xff0c…

linux系統下nginx安裝目錄和nginx.conf配置文件目錄

linux系統下nginx安裝目錄和nginx.conf配置文件目錄 1、查看nginx安裝目錄 輸入命令 # ps -ef | grep nginx 返回結果包含安裝目錄 root 2662 1 0 07:12 ? 00:00:00 nginx: master process /usr/sbin/nginx 2、查看nginx.conf配置文件目錄 輸入命令 # nginx…

android啟用hdcp_如何在Android上啟用優先收件箱(和設置僅重要通知)

android啟用hdcpYesterday Google released an updated Gmail application for Android 2.2 phones that supports the Priority Inbox feature—and more importantly, allows you to change your notifications to only alert you for important email. Let’s take a look. …

.Net CLR GC plan_phase二叉樹和Brick_table

楔子Plan_Phase(GC的計劃階段)很早就接觸了&#xff0c;但是后面一直沒用到&#xff0c;忘記了&#xff0c;此次又用到了&#xff0c;幾乎忘光了&#xff0c;費了很大力氣理解它&#xff0c;記錄下&#xff0c;以免又忘記了。主題計劃階段(plan_phase)主要就兩個部分&#xff0…

Vijos p1484 ISBN號碼

描述每一本正式出版的圖書都有一個ISBN號碼與之對應&#xff0c;ISBN碼包括9位數字、1位識別碼和3位分隔符&#xff0c;其規定格式如“x-xxx-xxxxx-x”&#xff0c;其中符號“-”就是分隔符&#xff08;鍵盤上的減號&#xff09;&#xff0c;最后一位是識別碼&#xff0c;例如0…

scrapy爬蟲啟示錄-小伙子老夫看你血氣方剛這本《爬蟲秘錄》就傳給你了

文章來源&#xff1a; IT源點 第一章 誤入歧途 每個學習爬蟲的人都有一顆愛美的心&#xff0c;俺也是一樣的。那么多的美眉圖片&#xff0c;不薅下來&#xff0c;沒了誰負責。于是夜里孤枕難眠的老男孩開始了他的擼碼之旅。從此在學習爬蟲&#xff0c;學習Python的道路上越走…

自己設置假期的日歷控件_在假期旅行時使用PC娛樂自己

自己設置假期的日歷控件Staying connected may be hard no matter what network you are on, and in flight Wi-Fi isn’t pervasive enough to count on. Here are tips and tricks to keep yourself entertained when unplugged and traveling. 無論您使用什么網絡&#xff0…