.NET週報 【3月第2期 2023-03-12】

2023-03-13 21:01:26

國內文章

ASP.NET Core中如何限制響應傳送速率(不是呼叫頻率)

https://www.cnblogs.com/coredx/p/17195492.html

ASP.NET Core中有很多RateLimit元件,.NET 7甚至推出了官方版本。不過這些元件的主要目標是限制使用者端存取服務的頻率,在HTTP伺服器崩潰前主動拒絕部分請求。如果請求沒有被拒絕服務會盡可能呼叫資源儘快處理。現在有一個問題,有什麼辦法限制響應的傳送速率嗎?這在一些需要長時間傳輸流式資料的情況時很有用,避免少量請求耗盡網路頻寬,儘可能同時服務更多請求。

基於TDesign風格的Blazor企業級UI元件庫

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

作為一名Web開發人員,開發前端少不了使用JavaScript,而Blazor就是微軟推出的基於.net平臺互動式客戶 Web UI 框架,可以使用C#替代JavaScript,減少我們的技術棧、降低學習前端的成本。而採用Blazor開發,少不了需要封裝UI控制元件,所以今天給大家推薦一套基於TDesign風格的Blazor企業級UI元件庫。

這樣在 C# 使用 LongRunnigTask 是錯的

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

Task.Factory.StartNew 有一個過載,是支援 TaskCreationOptions.LongRunning 引數來指定 Task 的特徵的。但是可能在沒有注意的情況下,你就使用了錯誤的用法。那麼本文我們來簡單闡述一下這個引數的作用,和使用的注意要點。

學習ASP.NET Core Blazor程式設計系列

https://www.cnblogs.com/chillsrc/p/16885702.html

這是一個學習ASP.NET Core Blazor程式設計系列的目錄,包括從初學者到高階應用的一系列文章。其中,從建立第一個Blazor應用程式、實體、遷移、列表頁面、資料校驗、路由、檔案上傳、登入等方面進行詳細介紹和演示。此係列文章提供了全面的學習資源,可以幫助讀者掌握ASP.NET Core Blazor的開發技能,實現高效的Web應用程式開發。

nacos實現Java和.NetCore的服務註冊和呼叫

https://www.cnblogs.com/wangsanfeng/p/17206679.html

用nacos作為服務註冊中心,如何註冊.NetCore服務,如何在Java中呼叫.NetCore服務呢?本文帶大家瞭解這一切。

VUE+.NET應用系統的國際化-整體設計思路

https://www.cnblogs.com/tianqing/p/17188422.html

近期產品要支援國際化多語言,主要涉及前端介面國際化以及後端提示資訊、異常資訊的國際化多語言支援。

目前我們的開發技術棧:前端VUE、後端.NET。面向前端介面和後端服務,分別涉及對應的國際化多語言支援方案。

VUE+.NET應用系統的國際化-多語言詞條服務

https://www.cnblogs.com/tianqing/p/17205495.html

上篇文章我們介紹了VUE+.NET應用系統的國際化-整體設計思路系統國際化改造整體設計思路如下:

  1. 提供一個工具,識別前後端程式碼中的中文,形成多語言詞條,按語言、介面、模組統一管理多有的多語言詞條
  2. 提供一個翻譯服務,批次翻譯多語言詞條
  3. 提供一個詞條服務,支援後端程式碼在執行時根據使用者登入的語言,動態獲取對應的多語言文字
  4. 提供前端多語言JS生成服務,按介面動態生成對應的多語言JS檔案,方便前端VUE檔案使用。
  5. 提供程式碼替換工具,將VUE前端程式碼中的中文替換為$t("詞條ID"),後端程式碼中的中文替換為TermService.Current.GetText("詞條ID")

今天,我們繼續介紹多語言詞條服務的設計和實現。

WinUI(WASDK)使用ChatGPT和攝像頭手勢識別結合TTS讓機器人更智慧

https://www.cnblogs.com/GreenShade/p/17201961.html

之前寫過一篇基於ML.NET的手部關鍵點分類的部落格,可以根據圖片進行手部的提取分類,於是我就將手勢分類和攝像頭資料結合,整合到了我開發的電子腦殼軟體裡。

CAP 7.1 版本釋出通告

https://www.cnblogs.com/savorboard/p/cap-7-1.html

今天,我們很高興宣佈 CAP 釋出 7.1 版本正式版,我們在這個版本中解決了一個長期以來的問題,也新增了幾個小特性及修復了幾個Bug。從 NuGet 資料來看,我們於去年底釋出的7.0版本非常受歡迎,如果你還沒有看到我們 7.0 的新特性的話,這裡是傳送門

由於本週Mayuki大佬很忙,所以國際板塊只有連結沒有簡介。

主題

【英文】BlazorBindings.Maui 釋出 v1.0 版本

https://dev.to/dreamescaper/blazorbindingsmaui-v10-50bo

【英文】autofac/Autofac 釋出 v7.0.0 版本

https://github.com/autofac/Autofac/releases/tag/v7.0.0

【英文】microsoft/WindowsAppSDK 釋出 v1.3.0-preview1 版本

https://github.com/microsoft/WindowsAppSDK/releases/tag/v1.3.0-preview1

【英文】ReSharper 2023.1 EAP 8 現已推出,改進了對 C# 和 C++ 的支援 | The .NET Tools Blog

https://blog.jetbrains.com/dotnet/2023/03/10/resharper-2023-1-eap-8/

【英文】Rider 2023.1 EAP 8 現已推出改進的 C# 和 F# 支援、新的編輯器功能和 Unity 修復 | The .NET Tools Blog

https://blog.jetbrains.com/dotnet/2023/03/10/rider-2023-1-eap-8/

【英文】JamesNK/Newtonsoft.Json 釋出 13.0.3 版本

https://github.com/JamesNK/Newtonsoft.Json/releases/tag/13.0.3

文章、幻燈片等

【日文】C# 中重大變更的未來處理(草案)| UFCPP

https://ufcpp.net/blog/2023/3/csharp-breaking-change/

【英文】從後設資料到 nettrace 格式的事件塊

https://chnasarre.medium.com/from-metadata-to-event-block-in-nettrace-format-90763a186dd5

【英文】使用 .NET 控制檯應用程式建立 AWS CloudWatch Logs:分步指南

https://dev.to/dileepamabulage/creating-aws-cloudwatch-logs-using-net-console-application-a-step-by-step-guide-2a1m

【英文】通過使用穩定擴散、C# 和 ONNX 執行時 AI 生成影象

https://onnxruntime.ai/docs/tutorials/csharp/stable-diffusion-csharp.html

【英文】ASP.NET Core 7.0 中的 Serilog – 在 ASP.NET Core 7.0 中使用 Serilog 進行結構化紀錄檔記錄

https://www.dotnetoffice.com/2023/03/serilog-in-aspnet-core-70-structured.html?m=1

【英文】Visual Studio 2022 – 17.5 效能增強 - Visual Studio 部落格

https://devblogs.microsoft.com/visualstudio/visual-studio-2022-17-5-performance-enhancements/

【英文】在 ASP.NET Core 中覆蓋 System.Text.Json.JsonSerializer 錯誤訊息

https://mohsen.es/override-system-text-json-jsonserializer-error-message-in-asp-net-core-35374255dd9f

【英文】WinForms Visual Basic 應用程式框架的新增功能 - .NET 部落格

https://devblogs.microsoft.com/dotnet/update-to-winforms-vb-appframework/

【英文】通過使用穩定擴散、C# 和 ONNX 執行時 AI 生成影象 - .NET 部落格

https://devblogs.microsoft.com/dotnet/generate-ai-images-stable-diffusion-csharp-onnx-runtime/

【英文】面向 C# 開發人員的 AI 驅動工具列表

https://dev.to/eekayonline/a-list-of-ai-powered-tools-for-c-developers-3p1k

【日文】顯示另存為對話方塊並儲存在 Blazor 中

https://zenn.dev/artuer/articles/cc464956745483

【日文】應用程式開發,包括 Blazor 的 EditForm(包括自定義驗證)- Qiita

https://qiita.com/_gobo/items/4f3e3845a029ba43f919

【英文】使用 Visual Studio 開發可存取的應用程式 - Visual Studio 部落格

https://devblogs.microsoft.com/visualstudio/developing-accessible-apps-with-visual-studio/

【日文】使用 .NET MAUI Blazor 製作 Markdown 備忘錄應用的印象

https://zenn.dev/tomori_k/articles/8ecac5a5920b59

【英文】.NET 月刊 | 2023 年 3 月 | .NET 工具部落格

https://blog.jetbrains.com/dotnet/2023/03/08/net-annotated-monthly-march-2023/

【日文】我想用 C# 和 Betalgo.OpenAI.GPT3 使用 ChatGPT API - Qiita

https://qiita.com/TellMin/items/7baaba35111fddeffe0c

【英文】針對 Blazor 和其他專案的 ChatGPT 演示,其中包含針對「Turbo」模型的新 API -- Visual Studio 雜誌

https://visualstudiomagazine.com/articles/2023/03/07/chatgpt-demos.aspx?m=1

【英文】啟動時使用 FluentValidation 進行 .NET Web API 設定驗證

https://medium.com/@imardare/net-web-api-configuration-validation-at-startup-using-fluentvalidation-6d43ea75e828

【英文】播放從 C# 到 rosbridge 的 JSON

https://zenn.dev/husty/articles/a003dfc33af925

【日文】如何在 C# 控制檯應用程式中為標準錯誤輸出著色 - Qiita

https://qiita.com/rougemeilland/items/9f272db7e0252c2f48d3

【日文】neue cc - csbindgen - 自動生成 C# 的本機程式碼呼叫或從 C# 呼叫本機程式碼的現代方法

https://neue.cc/2023/03/09-csbindgen.html

【日文】在 WPF 中處理未處理異常的最佳實踐

https://zenn.dev/nuits_jp/articles/2023-03-08-wpf-unhandled-exception

【英文】ASP.NET Core 中基於角色的授權

https://coderethinked.com/role-based-authorization-in-asp-net-core/

【英文】在 .NET 啟動時驗證連線字串

https://khalidabuhakmeh.com/validating-connection-strings-on-dotnet-startup

【英文】為 .NET 引入可靠的 Web 應用程式模式 - .NET 部落格

https://devblogs.microsoft.com/dotnet/introducing-the-reliable-web-app-pattern/

【日文】在 .NET 中使用 AzureKinect/RealSense

https://zenn.dev/husty/articles/a43118c0fe1d4a

【日文】WinUI3Desktop-Qiita介紹介紹

https://qiita.com/Yayoi-t/items/238476e8c9bdb59be775

【日文】[C# 12 候補特性] 擴充套件 | UFCPP

https://ufcpp.net/blog/2023/3/extensions

開源庫、儲存庫、工具等

mk3008/Carbunql: 一個用於解析和構建選擇查詢的輕量級庫。可以動態地重建SQL。

https://github.com/mk3008/Carbunql

網站、檔案

推文

https://twitter.com/jcouv/status/1633227150777278466?s=12


https://twitter.com/JamesNK/status/1634048668881006592


https://twitter.com/badamczewski01/status/1634596376490254337

深入探索

Blazor Sections API 提案 · Issue #46937 · dotnet/aspnetcore

https://github.com/dotnet/aspnetcore/issues/46937

designs/net8.0-browser-tfm.md 設計 · dotnet/designs · GitHub

https://github.com/dotnet/designs/blob/main/accepted/2023/net8.0-browser-tfm.md

公告: Razor 編譯器API重大變更 · Issue #8399 · dotnet/razor

https://github.com/dotnet/razor/issues/8399

版權宣告

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

格式如下:

  • 10~50字左右的標題
  • 對應文章或專案網址存取連結
  • 200字以內的簡介,如果太長會影響閱讀體驗

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

.NET效能優化交流群

相信大家在開發中經常會遇到一些效能問題,苦於沒有有效的工具去發現效能瓶頸,或者是發現瓶頸以後不知道該如何優化。之前一直有讀者朋友詢問有沒有技術交流群,但是由於各種原因一直都沒建立,現在很高興的在這裡宣佈,我建立了一個專門交流.NET效能優化經驗的群組,主題包括但不限於:

  • 如何找到.NET效能瓶頸,如使用APM、dotnet tools等工具
  • .NET框架底層原理的實現,如垃圾回收器、JIT等等
  • 如何編寫高效能的.NET程式碼,哪些地方存在效能陷阱

希望能有更多志同道合朋友加入,分享一些工作中遇到的.NET效能問題和寶貴的效能分析優化經驗。目前一群已滿,現在開放二群。

如果提示已經達到200人,可以加我微信,我拉你進群: ls1075

另外也建立了QQ群,群號: 687779078,歡迎大家加入。