.NET周报 【3月第2期 2023-03-12】

周报 ,NET · 浏览次数 : 703

小编点评

**.NET 性能优化** * Razor 编译器API重大变更 * 性能瓶颈后如何优化? * .NET框架底层原理的实现 * 如何编写高性能的.NET代码? * 哪些地方存在性能陷阱? * 如何找到.NET性能瓶颈? * 如何优化性能?

正文

国内文章

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

image-20230313130753100


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

image-20230313192829889


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

image-20230313192946778

深入探索

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,欢迎大家加入。

与.NET周报 【3月第2期 2023-03-12】相似的内容:

.NET周报 【3月第2期 2023-03-12】

国内文章 ASP.NET Core中如何限制响应发送速率(不是调用频率) https://www.cnblogs.com/coredx/p/17195492.html ASP.NET Core中有很多RateLimit组件,.NET 7甚至推出了官方版本。不过这些组件的主要目标是限制客户端访问服务的

.NET周报 【5月第2期 2023-05-14】

国内文章 XUnit数据共享与并行测试 https://www.cnblogs.com/podolski/p/17388602.html 在单元或者集成测试的过程中,需要测试的用例非常多,如果测试是一条一条过,那么需要花费不少的时间。从 V2 开始,默认情况下 XUnit 自动配置并行(参考资料),

.NET周报 【2月第3期 2023-02-18】

国内文章 2023 年.NET仓库社区年度调查已经开始 https://mp.weixin.qq.com/s/H9xUAO_yAdqm5CIHBs_eqA 中国地区是 .NET 的一个重要的市场和社区,有着众多的 .NET 开发者和爱好者。中国地区也有着很多优秀的 .NET 相关的项目和资源。这些项

.NET周刊【9月第3期 2023-09-17】

国内文章 在.NET 8 RC1 版本中 MAUI、ASP.NET Core 和 EF8 的新特性 https://www.cnblogs.com/shanyou/p/17698428.html 从年初2 月份发布第一个预览版,经历7个预览版后,Microsoft 西雅图时间9月13日发布了 .NE

.NET周刊【5月第2期 2024-05-12】

国内文章 C#在工业数字孪生中的开发路线实践 https://mp.weixin.qq.com/s/b_Pjt2oii0Xa_sZp_9wYWg 这篇文章探讨了C#在工业数字孪生技术中的应用,介绍了三种基于C#的数字孪生系统实现方案: WPF + Unity:结合WPF技术和Unity引擎,实现客户

.NET周报 【3月第1期 2023-03-03】

国内文章 我做的FFmpeg开源C#封装库Sdcb.FFmpeg https://www.cnblogs.com/sdflysha/archive/2023/02/27/dotnet-conf-china-2022-ffmpeg.html FFmpeg是知名的音频视频处理软件,我平时工作生活中会经常

.NET周报 【3月第3期 2023-03-19】

国内文章 记一次 .NET某汽车零件采集系统 卡死分析 https://www.cnblogs.com/huangxincheng/p/17214154.html 前段时间有位朋友在微信上找到我,说他的程序会出现一些偶发卡死的情况,让我帮忙看下是怎么回事,刚好朋友也抓到了dump,就让朋友把 dum

.NET周报 【3月第4期 2023-03-24】

国内文章 .NET应用系统的国际化-多语言翻译服务 https://www.cnblogs.com/tianqing/p/17232559.html 本文重点介绍了多语言翻译服务的设计和实现。文章描述了如何通过多语言翻译服务,将临时存储在数据库中的多语言词条,按支持的语言翻译成多语言词条。作者设计了

.NET周报 【4月第1期 2023-04-02】

国内文章 探索 SK 示例 -- GitHub 存储库中的机器人 https://www.cnblogs.com/shanyou/p/17280627.html 微软 3月22日 一篇文章“Semantic-kernel 嵌入和记忆:使用聊天UI探索GitHub Repos”[1] ,文章中进行了展

.NET周报【11月第3期 2022-11-22】

国内文章 .NET Conf China 2022 第一批讲师阵容大揭秘!整个期待了! https://mp.weixin.qq.com/s/4p89hhBPw6qv-0OB_T_TOg 目光看过来 2022年12月3-4日,一场社区性质的国内规模最大的 线上线下.NET Conf 2022技术大会