.NET周刊【9月第3期 2025-09-21】
國內文章
Runtime Async - 步入高性能異步時代
http://www.rzrgm.cn/hez2010/p/19097937/runtime-async
本文詳細闡述了同步與異步代碼的區別以及 async/await 的機制。同步代碼阻塞線程,異步代碼則不阻塞線程,依賴回調機制。async/await 解決了回調地獄的問題,使異步編程更簡單。C# 編譯器將異步方法轉變為狀態機,允許在 await 點暫停。盡管存在性能問題,.NET 團隊自 .NET 8 開始探索改善 async/await。在 .NET 9 中推出了 Runtime Async,允許舊代碼自動升級,這樣無需源代碼更改。整體而言,文章深入探討了 C# 的異步編程機制及其演變。
C# 2025 年 6-9 月 TIOBE 排名增長及未來展望
http://www.rzrgm.cn/shanyou/p/19100079
根據 2025 年 TIOBE 編程語言排行榜,C#持續增長,2025 年 6 至 9 月排名第 5,市場份額從 4.69% 增長至 6.38%。AI 編程助手推動了 C#的發展,企業在 Web 后端和游戲開發領域的需求穩固,尤其在金融和工業行業表現突出。C#憑借簡潔的語法和開源策略吸引開發者,與 Java 的差距縮小。若 C#保持當前增速,2026 年有望超越 Java。此外,C#需要增強 AI 工具鏈支持,拓展安全領域應用,才能有效提升市場地位。
Blazor 全棧是個陷阱
http://www.rzrgm.cn/deali/p/19098843
本文討論了 Blazor 的優缺點。Blazor 適合快速構建,但其組件庫和生態尚不成熟。文章提到穩定性問題由于 API 頻繁變動,使得開發過程中參考文檔和 AI 生成代碼時常遭遇困難。雖然 Blazor 宣稱支持全棧開發,但實際應用中仍需依賴 JavaScript。學習和團隊協作挑戰較大,許多前端工程師對此技術不熟悉。此外,WebAssembly 的性能和加載速度存在問題,可能影響生產環境的使用。總的來說,Blazor 的推廣面臨多重障礙。
GZY.Quartz.MUI(基于 Quartz 的 UI 可視化操作組件) 2.8.0 發布 新增儀表盤和檢索功能
http://www.rzrgm.cn/GuZhenYin/p/19093054
這篇文章介紹了 2.8.0 版本的更新內容,包括新增任務搜索功能和任務儀表盤,以便于監控執行情況。修復了秒級任務啟動時偶爾執行的 BUG 和 API 任務異常顯示問題。優化了文件存儲的并發控制,保證多線程環境下的安全性。文章詳細說明了每個更新的目的和效果,強調了項目的輕量級特點。作者感謝了群友的建議,并鼓勵進一步的反饋。
一個 Blazor/WinForm 開發者的 WPF 學習記:通往 Avalonia 的那條路
http://www.rzrgm.cn/madtom/p/19100538
本文分享了作者從 Blazor 和 WinForm 開發轉向學習 WPF 的經歷,探討了 WPF 的重要性及其與 Avalonia 的關系。作者指出,學習 WPF 有助于更好地理解 Avalonia,因為它們在概念和機制上有相似之處。文章分析了 WPF 的優缺點,包括其強大的可塑性和老舊的生態。文中提供學習中遇到的挑戰和解決方法,特別是在 XAML 編寫和數據綁定調試方面。整體上,作者傳達了深入學習 WPF 的價值和實際經驗。
一款基于 .NET 開源美觀、功能豐富的串口調試工具
http://www.rzrgm.cn/Can-daydayup/p/19086902
SuperCom 是一款基于.NET 框架的開源串口調試工具,具有美觀、流暢和多功能的特點。它支持同時監聽多個串口,可自定義波特率和數據位,并能自動保存日志。工具提供語法高亮、插件和皮膚支持,以及在線升級等功能。用戶可以通過 GitHub 和 Gitee 訪問項目源碼。同時,該項目已被納入 C#/.NET 領域的精選項目中,有助于開發者獲取最新信息和最佳實踐。
.NET 10 是微軟 AI 戰略的技術承重墻
http://www.rzrgm.cn/shanyou/p/19096157
微軟 2025 年成立的新部門 CoreAI,旨在加速 AI 基礎設施與工具開發,構建全面的 AI 開發生態。通過.NET 10,實現 AI 與開發工具深度融合,優化性能、支持跨平臺計算。它提供 Microsoft.Extensions.AI 作為 AI 服務統一接口,促進不同模型的無縫切換。AutoGen 和 Semantic Kernel 提升 AI 智能體的協同能力,并與.NET 框架緊密集成。同時,.NET 10 強化與 Azure AI 的協同,平衡安全性與效率。此外,它通過開放接口加強市場競爭力,吸引更多開發者。總結而言,.NET 10 是微軟 AI 戰略的核心引擎,為企業級 AI 應用奠定基礎。
從零開始:C# 拼音首字母搜索、字符串編碼、關鍵詞高亮的原理即實現考慮
http://www.rzrgm.cn/luojin765/p/19100717
本文討論如何在處理大量文本搜索時提高效率,重點在拼音首字母轉換上。通過分析字符的 Unicode 編碼,實現了對漢字的拼音首字母的快速匹配。給出了具體的代碼示例,有助于提高搜索性能。最后,文章分享了 TDS 的搜索邏輯,旨在優化用戶體驗。
.NET 駕馭 Word 之力:COM 組件二次開發全攻略之連接 Word 與創建你的第一個自動化文檔
http://www.rzrgm.cn/mudtools/p/19092776
本文面向具備 C#和.NET 基礎的開發者,介紹了如何利用 MudTools.OfficeInterop.Word 庫實現 Word 文檔的自動化處理。文中闡述了自動化處理的優勢,包括提高效率、保證一致性和易于集成等。還討論了傳統處理方式的局限性,如效率低下和資源浪費。使用此庫,開發者可以簡化 API 調用、優化資源管理、增強異常處理,并確保類型安全。最后,本文將通過環境搭建、核心概念理解和基礎操作實踐,幫助讀者獨立開發基于.NET 的 Word 文檔自動化應用,提升工作質量和效率。
聊一聊 .NET 超高內存故障分析方法 的反思
http://www.rzrgm.cn/huangxincheng/p/19098323
本文探討了分析大內存 dump 的方法。常規工具難以應對 40G 以上的內存,分析過程慢且易出錯。文章提供了最佳實踐,建議避免超過 10G 的 dump。它通過實例演示了如何模擬內存增長,揭示了一些未預見的內存分配問題。特別適合于分析具有高內存使用場景的程序。最后,詳細解釋了如何通過代碼模擬正常和異常的內存使用,從而幫助開發者更有效地進行內存管理和分析。
C#/.NET/.NET Core 技術前沿周刊 | 第 54 期(2025 年 9.8-9.14)
http://www.rzrgm.cn/Can-daydayup/p/19093940
本篇文章綜述了 C#/.NET/.NET Core 相關的技術動態與資源,包括優秀開源項目、Visual Studio 2026 預覽版介紹和新功能、Windows 系統優化工具以及最新的.NET 10 RC 1 版本發布。內容涉及編程技巧練習集,強調了技術的實用性和學習資源。文章鏈接提供了豐富的額外信息,增強了交流和學習的便利性。整體上,文章圍繞.NET 技術,展示了前沿成果和工具,助力開發者在技術領域持續進步。
如何在極短時間內通透一個大型開源項目
http://www.rzrgm.cn/token-ai/p/19100476
本文探討如何利用 AI 技術快速理解開源項目,以 OpenDeepWiki 為例,分析其項目架構與核心代碼分析技術。OpenDeepWiki 是基于 AI 的代碼知識庫,采用現代化分層架構,后端使用.NET 9.0。項目結構包括文檔處理管道、數據庫抽象層及微服務架構。文檔處理管道通過命令模式實現復雜流程的封裝,確保可觀測性和有效執行,展示了 AI 驅動的創新方案。文章內容深入且實用,有助于開發者掌握開源項目的解讀與實施。
一個基于 .NET 開源、簡易、輕量級的進銷存管理系統
http://www.rzrgm.cn/Can-daydayup/p/19099887
JxcLite 是一個基于 .NET Blazor 開發的輕量級進銷存管理系統。它包含基礎數據管理、進貨和銷貨管理、庫存以及財務管理等功能模塊。項目提供了全套源代碼,支持幾個平臺和應用類型,如 Web 和 WinForm。用戶可使用默認賬號訪問系統,內置 SQLite 數據庫便于快速運行。JxcLite 被推薦為優秀的 .NET 項目,用戶可通過 GitHub 和 Gitee 獲取代碼并支持項目。該系統及其模塊設計簡明易懂,適合開發者學習和使用。
簡單來講講 C#中的鎖
http://www.rzrgm.cn/ZYPLJ/p/19102575
本文探討了 C#中的鎖機制,說明了鎖在并發編程中的重要性和基本特性,如互斥性、可見性和可重入性。通過實例展示了鎖如何解決線程競爭問題,確保數據一致性。文中提到在.NET 9 中可以使用新的 Lock 類型作為鎖,簡化了鎖的實現和提高了編譯器的效率。作者強調學習和指出錯誤的重要性,展現出積極的學習態度。整體論述清晰且具有實用性。
從零開始: c#純代碼實現完整 Json 解析器的全過程及注釋與自定義格式的支持實現
http://www.rzrgm.cn/luojin765/p/19102718
文章探討了 JSON 反序列化的重要性和實現方法。JSON 是現代編程中常用的數據格式,反序列化的過程涉及將網絡格式轉換為可讀的格式。通過 C#代碼,文章闡明了如何實現自定義的 JSON 解析器,包含各種數據類型和解析流程。解析過程如拆包裹,依次讀取對象、數組、字符串等,最終將結構化數據呈現給用戶。文章提供了一些代碼示例,并強調了使用 MIT 協議開源的靈活性。整體而言,文章應用深刻,實用性強,清晰易懂,適合開發者學習。
.NET 駕馭 Word 之力:理解 Word 對象模型核心 (Application, Document, Range)
http://www.rzrgm.cn/mudtools/p/19094912
在使用 MudTools.OfficeInterop.Word 庫時,理解 Word 對象模型的層次結構非常重要。對象模型包括 Application、Document 和 Range 等核心對象。Application 對象控制 Word 應用程序的全局設置,Document 對象代表打開的文檔,管理其內容和屬性。通過 IWordApplication 和 IWordDocument 接口,開發者能夠靈活操作 Word 文檔。此外,示例代碼展示了如何創建、打開文檔及控制應用程序可見性。這使得 Word 文檔自動化變得高效與靈活。
U3D 動作游戲開發讀書筆記--2.3 3D 游戲所需要的數學知識
http://www.rzrgm.cn/TonyCode/p/19095918
本文介紹了 3D 游戲中的數學知識,特別是向量、點乘、叉乘和投影。向量的操作如加減法遵循平行四邊形法則,并用于判斷物體方向。點乘幫助確定敵人與主角的相對位置,而叉乘則用于計算法向量,尤其在 3D 空間中。文中還提供了實際代碼示例來演示這些數學概念在 Unity 游戲開發中的應用。這些數學知識對開發 3D 游戲至關重要,對游戲的物理和邏輯實現具有指導意義。
OpenCvSharp 基于顏色反差規避 FBA 面單貼標
http://www.rzrgm.cn/axing/p/19099985
文章討論了通過灰度值和固定包裹位置來處理圖像,以提取紙箱上的面單信息。首先,定義了如何根據 DPI 計算毫米對應的像素點。其次,展示了獲取、計算和分析圖像的過程,包括裁剪圖像和檢測標簽位置。使用 OpenCvSharp 庫,通過數學運算實現了圖像處理和分析。整體方法簡潔明了,邏輯性強。
[項目開發經驗分享]基于強類型事件的類型參數傳遞問題 —— 在 .NET Winform 項目中如何設計泛型事件總線以實現 UI 與核心層的解耦
http://www.rzrgm.cn/yghr3a/p/19101171
該項目基于.NET Framework,旨在實現一鍵發布博客到多個平臺的功能。項目核心層定義事件系統,包括事件接口 IEvent 和事件總線 EventBus。采用發布-訂閱模式解耦 UI 與核心層,支持強類型事件以確保編譯期類型安全。設計中考慮到如何優雅地傳遞配置對象,通過泛型事件類 AddPublishConfigEvent 實現復用,避免定義多個事件類的繁瑣。此方案雖簡潔,但事件處理方法需為泛型,增加復雜性。
精選 4 款基于 .NET 開源、功能強大的 Windows 系統優化工具,助力輕松提升 Windows 系統性能與使用體驗!
http://www.rzrgm.cn/Can-daydayup/p/19102722
本文介紹了四款基于.NET 的開源 Windows 系統優化工具,包括 Optimizer、SophiApp、WinMemoryCleaner 和 ZyperWin++。這些工具幫助提高計算機性能,增強隱私和安全性。Optimizer 可關閉不必要的 Windows 服務,清理系統垃圾文件等。SophiApp 提供超過 130 項調整選項,優化 Windows 10 和 11。WinMemoryCleaner 通過釋放內存幫助提升系統性能。ZyperWin++ 支持性能優化及多種系統設置。這些項目的開源地址均附在文中,適合開發者了解最新的 C#與.NET 相關動態。
【譯】讓性能民主化:Copilot Profiler Agent 在實際代碼中的應用
http://www.rzrgm.cn/MeteorSeed/p/19097066
Copilot Profiler Agent 是 Visual Studio 2026 Insider 中推出的一款人工智能性能助手,能夠幫助開發者識別和解決性能瓶頸。它提供 CPU 和內存使用分析,生成基準測試,驗證性能改進效果。用戶可以通過簡單的提問與其交互,體驗流暢的性能優化過程。Profiler Agent 旨在解決實際開發中的復雜性能問題,特別是在高要求的開源項目中,已獲得用戶的積極反饋。未來,它還將擴展更多功能,期待開發者在其工作流程中應用。
Revit 二次開發環境配置
http://www.rzrgm.cn/lingyanspace/p/19104205
本文針對 Revit 二次開發入門提供全面指導。內容包括開發環境配置、TaskDialog 的使用以及插件加載流程。作者詳細描述了 Visual Studio 的選擇、Revit SDK 的引入、與.NET Framework 的兼容性。此外,介紹了 TaskDialog 的創建及用戶交互,分析了插件的.addin 文件結構和加載機制。文章輔以下載資源,適合建筑信息化工程師、BIM 開發者及學生,幫助讀者快速上手 Revit 插件開發。
主題
新的可信發布增強了 NuGet.org 的安全性 - .NET 博客
Visual Studio for .NET MAUI 中 XAML 實時預覽版的增強功能 - Visual Studio 博客
Android 16 KB 頁面大小要求對 .NET 開發人員意味著什么
https://platform.uno/blog/what-android-16-kb-page-size-requirement-means-for-net-developers/
ReSharper 和 Rider 2025.2 的更多更新和修復 | .NET Tools 博客
https://blog.jetbrains.com/dotnet/2025/09/18/resharper-rider-2025-2-2/
通過提示、資源和采樣充分利用 Visual Studio 中的 MCP - Visual Studio 博客
https://devblogs.microsoft.com/visualstudio/mcp-prompts-resources-sampling/
公共預覽版:Azure Functions .NET 10 支持 | Azure 更新 | Microsoft Azure
https://azure.microsoft.com/en-us/updates?id=503134
發布
- aws/aws-sdk-net
- Azure/azure-sdk-for-net
- Azure.Communication.Email_1.0.2, Azure.Communication.Sms_1.0. 2, Azure.Core_1.49.0、Azure.ResourceManager.Compute_1.12.0、Azure.ResourceManager.DataProtectionBackup_1.7. 0, Azure.ResourceManager.EventHubs_1.2. 1, Azure.ResourceManager.IotFirmwareDefense_1.1. 0, Azure.ResourceManager.Network_1.12. 0 Azure.ResourceManager.Quota_1.2.0、Azure.ResourceManager.WorkloadOrchestration_1.0. 0, Azure.Storage.Blobs_12.25. 1、Microsoft.Azure.WebPubSub.AspNetCore_1.5。 0、Microsoft.Extensions.Azure_1.13。 0, System.ClientModel_1.7.0
- DataDog/dd-trace-dotnet
- googleapis/google-cloud-dotnet
- JamesNK/Newtonsoft.Json
- microsoft/WindowsAppSDK
文章、幻燈片等
使用“Aspire.Unity”將 Unity3D 集成到 .NET Aspire 中
https://dev.to/dutchskull/integrating-unity3d-into-net-aspire-with-aspireunity-6lo
探索 .NET 中的文本到圖像功能 - .NET 博客
https://devblogs.microsoft.com/dotnet/explore-text-to-image-dotnet/
Visual Studio 2026 預覽體驗成員:使用 Podman 進行容器開發 - 面向開發人員的 Microsoft
C# 中的索引器:性能比較和內部結構
https://medium.com/@pavel.romash/indexers-in-c-performance-comparison-internals-0d88885ac780
我嘗試使用 ValidationProblemDetails 和 FluentValidation + 客戶端
https://zenn.dev/semicolon/articles/281cf5eb0e30ac
構建 MCP 服務器以從聊天運行 BenchmarkDotNet
https://amarozka.dev/mcp-server-dotnet-benchmarkdotnet-from-chat/
質疑約定:C# 作為啟動速度的捷徑
https://www.infoq.com/presentations/c-sharp-startup/
有人告訴我對 C# 有 10 年的了解,所以我嘗試將其部署到 Cloud Run 上
https://zenn.dev/koduki/articles/dotnet20250920
嘗試在 Microsoft.Extensions.AI 中使用 MCP 服務器實現 ChatClient
https://qiita.com/pierusan2010/items/4fb0fcf2714e0f68f87e
.NET 生態系統的差距和豐富性
https://platform.uno/blog/the-gaps-and-richness-of-the-net-ecosystem/
構建和發布用于 Webhook 測試的 .NET Aspire 托管擴展 | 麗貝卡·鮑威爾
https://rebecca-powell.com/posts/aspire-hosting-webhook-tester-extension/
宣布:JetBrains .NET Days Online 2025 | .NET Tools 博客
https://blog.jetbrains.com/dotnet/2025/09/18/announcing-jetbrains-net-days-online-2025/
為什么可以在另一個實例中訪問私有成員
https://qiita.com/sebayashi-tomoya/items/0aa1d06c842eb9160084
sleep-pc:一種 .NET 本機 AOT 工具,用于使 Windows 在超時后進入睡眠狀態
https://andrewlock.net/sleep-pc-a-dotnet-tool-to-make-windows-sleep-after-a-timeout/
將 HTTP/2 雙向流與 SocketsHttpHandler 一起使用時掛起
https://zenn.dev/mayuki/articles/40bf61f23cf97a
[C#] 了解 HttpClient 以及如何設置它
https://zenn.dev/arika/articles/20250918-httpclient-what-is-it
[C#] 嘗試 Velopack 提供可執行文件的自動更新
https://zenn.dev/arika/articles/20250916-try-velopack
SemanticKernel 和 PostgreSQL
https://zenn.dev/yakumo3/articles/e5e389dca43db1
[C#] 使用 Aspire 運行 vLLM 以創建可以使用 AI 的開發環境
https://zenn.dev/arika/articles/20250915-vllm-with-aspire
在 Resharper 中測量 UI 響應能力
https://minidump.net/measuring-ui-responsiveness/
[C#] 我想 DI BackgroundService 從其他人那里獲取數據
https://zenn.dev/arika/articles/20250917-how-background-connect
運行時異步 - 邁向高性能異步時代 - 奇塔
https://qiita.com/hez2010/items/4aeb16b943b01c10c4f7
提示文件和說明文件解釋 - .NET 博客
https://devblogs.microsoft.com/dotnet/prompt-files-and-instructions-files-explained/
Rider 2025.3 的搶先體驗計劃現已開放! | .NET Tools 博客
https://blog.jetbrains.com/dotnet/2025/09/17/the-early-access-program-for-rider-2025-3/
ReSharper 和 .NET Tools 2025.3 的搶先體驗計劃現已推出! | .NET Tools 博客
庫、存儲庫、工具等
nuskey8/CsSqlite:適用于 .NET 和 Unity 的極其快速、健壯且輕量級的 SQLite 綁定
https://github.com/nuskey8/CsSqlite
- [C#] CsSqlite - 適用于 .NET/Unity 的高性能 SQLite 庫] (https://zenn.dev/nuskey/articles/library-cssqlite)
網站、文檔等
不安全的代碼最佳實踐 - .NET
https://learn.microsoft.com/en-us/dotnet/standard/unsafe-code/best-practices
推文
https://x.com/egorbo/status/1969039241020682728

今日人物
莫里斯·文森特·威爾克斯爵士(Sir Maurice Vincent Wilkes, FREng, FRS,1913 年 6 月 26 日-2010 年 11 月 29 日)是英國計算機科學先驅,被譽為存儲程序計算機和微程序設計的奠基人之一123。
威爾克斯出生于英國伍斯特郡達德利,從劍橋大學圣約翰學院數學專業畢業后,于卡文迪許實驗室獲得碩士(1936)與博士(1937)學位。二戰期間參與雷達與轟炸瞄準系統研發。戰后回到劍橋數學實驗室并于 1945 年任主任2。
1946 年,他接觸到約翰·馮·諾依曼關于 EDVAC 的報告,深受存儲程序理念啟發。同年赴美國賓夕法尼亞大學參加計算機設計夏校,返英途中開始構思 EDSAC(Electronic Delay Storage Automatic Calculator)。1949 年 EDSAC 建成并投入服務,是世界首臺可實際運行程序的存儲程序電子計算機12。
在 EDSAC 的編程實踐中,威爾克斯與學生大衛·惠勒和斯坦利·吉爾撰寫了全球第一本編程教材《電子數字計算機程序編制》(1951)。1951 年,他提出微程序設計(Microprogramming)理念,大幅簡化邏輯設計,并在 EDSAC 2(1958)中實現,后被 IBM 系統/360 采納,成為現代計算機架構基礎3。他還在 1965 年提出了緩存存儲器概念,并在 1970 年代參與早期網絡(Cambridge Ring)研發。
威爾克斯 1965 年起為劍橋大學計算機技術教授,1980 年退休后赴美國 DEC 公司與 MIT 任職,1986 年起為 Olivetti 與 AT&T 實驗室顧問。1967 年獲圖靈獎,另有法拉第獎章、英國計算機學會杰出會員等殊榮。2000 年因對計算機科學的貢獻被封為爵士1。

C# .NET 交流群
相信大家在開發中經常會遇到一些性能問題,苦于沒有有效的工具去發現性能瓶頸,或者是發現瓶頸以后不知道該如何優化。之前一直有讀者朋友詢問有沒有技術交流群,但是由于各種原因一直都沒創建,現在很高興的在這里宣布,我創建了一個專門交流.NET 性能優化經驗的群組,主題包括但不限于:
- 如何找到.NET 性能瓶頸,如使用 APM、dotnet tools 等工具
- .NET 框架底層原理的實現,如垃圾回收器、JIT 等等
- 如何編寫高性能的.NET 代碼,哪些地方存在性能陷阱
希望能有更多志同道合朋友加入,分享一些工作中遇到的.NET 問題和寶貴的分析優化經驗。目前一群已滿,現在開放二群。可以加我 vx,我拉你進群: ls1075 另外也創建了 QQ Group: 687779078,歡迎大家加入。

浙公網安備 33010602011771號