C# .NET 周刊|2026年3月5期

国内文章

《HelloGitHub》第 120 期

https://www.cnblogs.com/xueweihan/p/19778052

HelloGitHub 介绍了 GitHub 上有趣的开源项目,涵盖多种编程语言,包括 C#、C++ 和 Go。文章强调了多个实用项目,如 DriverStoreExplorer 和 MonoGame,展示其功能和影响力。每个项目均具有独特的特点,如易用性和跨平台能力,吸引开发者参与开源。定期更新的内容增强了读者对开源的兴趣和热情,促使更多人了解技术细节。

世界第一个开源可商用 .NET Office 转 PDF 工具/库 - MiniPdf

https://www.cnblogs.com/ITWeiHan/p/19786846

MiniPdf 是一款轻量级开源 .NET 库,用于将 Office 文件转换为 PDF。它无需安装任何软件,支持 Windows、Linux 和 macOS。该工具解决了现有转换库收费和复杂安装的问题,提供极简的使用体验。MiniPdf 适合基本转换需求,但对复杂文档支持有限,推荐在本地测试以获得最佳效果。其特点包括不依赖 COM 和 Adobe Acrobat,允许自定义字体注册,并提供命令行工具。MiniPdf 使用 Apache 2.0 协议,完全免费商用。

C++ vs .NET 数组原地反转实测:小数组 C++ 碾压,大数组 .NET 反杀?

https://www.cnblogs.com/sdcb/p/19756067/cpp-csharp-array-reverse

这篇文章探讨了 C++ 和 C# 反转序列的性能差异。作者指出原文比较不公,C# 使用原地反转,而 C++ 使用了包含内存分配的 std::reverse_copy。经过控制变量的测试,发现 C++ 在小数组性能上略胜一筹,但在大数据量下 .NET 的 Array.Reverse 表现优异。作者通过公正的比较提出了更合理的结论。测试包括 C# 的多种实现和内存管理方式,得出准确的反转算法效率比较。

微软发布的《Generative AI for Beginners.NET: Version 2》(生成式人工智能初学者.NET 第二版)课程

https://www.cnblogs.com/shanyou/p/19772592

微软发布的《Generative AI for Beginners.NET: Version 2》课程和.NET 10 生态系统标志着其在 AI 应用开发的技术进步。.NET 10 通过引入 Microsoft.Extensions.AI、Entity Framework Core 10 等,优化了人工智能能力的集成。其底层重构提高了异步 I/O、高维向量计算的性能,支持 AVX10.2 指令集,提升了推理效率。C# 14 引入多项优化,增强了 AI 应用的开发体验。整体而言,该内容展现了.NET 在 AI 领域的深度应用及技术创新。

Serilog:从结构化日志认知到 .NET 工程落地

https://www.cnblogs.com/denglei1024/p/19765966

本文讨论了结构化日志的重要性,强调传统文本日志的不足。文本日志常常难以过滤和聚合,尤其在故障排查时显得力不从心。结构化日志通过明确字段,增强了机器的识别能力,便于数据检索与分析。文章指出结构化日志能解决高检索成本、字段不稳定及难以融入可观测体系的问题,要求团队形成一致的字段使用规范,以提高日志的有效性和可用性。整体来看,结构化日志是现代软件工程中的重要基础,关乎团队协作效率和系统的可观测性。

Maomi.I18n | .NET 全能多语言解决方案

https://www.cnblogs.com/whuanle/p/19778084

Maomi.I18n 是一个易用的多语言框架,支持 ASP.NET Core 和 WPF 项目。它允许开发者通过键值对管理多语言,简化了多国语言的实现。框架支持使用 JSON 文件存储语言资源,并提供了全局共享和项目隔离的多语言方案。开发者可以轻松扩展和定制多语言功能。该框架通过标准化接口使得语言方案的迁移和切换变得简单,为不同用户群体提供了灵活的语言支持,是业务国际化的重要工具。

ORM 性能测试 Benchmark(最终版)

https://www.cnblogs.com/hubro/p/19763634

本文深入探讨了 ORM 在查询性能中的表现,主要分析了查询表达式的解析、数据映射和内存占用。测试使用 BenchmarkDotNet 框架和 SQLite 数据库,主要集中在表达式解析和数据映射的效率,以及对多种 ORM 的比较。测试未涵盖驾驶不同实现的操作,如 BulkCopy,着重对表达式生成 SQL 的效率以及映射性能进行了细致测试。结果对优化相关项目具有指导意义。

EF Core 原生 SQL 实战:FromSql、SqlQuery 与对象映射边界

https://www.cnblogs.com/denglei1024/p/19759009

文章讨论了在使用 EF Core 时,如何有效地结合原生 SQL 与 LINQ。常见问题包括复杂报表查询的可维护性和 SQL 注入风险。作者强调 FromSql 和 SqlQuery 的不同职能及使用原则,建议优先使用参数化 SQL,避免直接拼接字符串,并分离实体模型与读模型。提供了具体代码示例,展示优化写法如何提高可维护性。通过标注查询意图和分隔模型,读性能也得到提升。这为 EF Core 用户提供了实用的解决方案。

C# 面试高频题:装箱和拆箱是如何影响性能的?

https://www.cnblogs.com/shenchuanchao/p/19768678

装箱和拆箱是 C#中将值类型和引用类型相互转换的过程。装箱将值类型转为引用类型,拆箱则反之。装箱后,内存分配和数据拷贝会导致额外开销,从而影响性能,尤其在频繁执行时。此外,拆箱需要进行类型检查,增加了开销。非泛型集合如 ArrayList 常导致大量装箱拆箱,降低效率。采用 List 可以避免这些问题。面试时,需全面说明装箱拆箱的影响及避免策略,以展示深入了解。总结来说,装箱拆箱影响性能,需谨慎使用。

高性能客服系统技术内幕:通过 SpinWait 自旋等待结构体提升高频消息分发性能

https://www.cnblogs.com/sheng_chao/p/19769794

本文介绍了升讯威在线客服与营销系统的开发过程,重点探讨了高频消息分发中使用的 SpinWait 自旋等待结构体。作者分析了传统锁机制的缺陷,指出在高并发场景下,内核切换带来的开销显著影响系统性能。通过使用 SpinWait,线程在等待资源时可以减少不必要的上下文切换,从而提高系统的响应速度。文章强调了解底层机制的重要性,并提供了一些优化方案,以应对工业级的高并发挑战。

WPF 新手村教程(七)------ 终章(MVVM 架构初见杀)

https://www.cnblogs.com/leaf-7-scouts/p/19780066

本文介绍 MVVM 架构,强调学习 MVVM 的复杂性和耐心。作者指出,MVVM 的目的在于实现前后端分离,减少业务逻辑与 UI 之间的耦合。提到初学者会面临众多技术概念,需要不断反复学习以理解。通过简单的代码实例展示 MVVM 的优势,如解耦数据与 UI。最后,强调学习前应先掌握相关知识,建议结合教学 Demo 进行学习。

DotNetPy:现代.NET 与 Python 互操作 实战指南

https://www.cnblogs.com/shanyou/p/19750566

本文讨论了 C#与 Python 在现代软件开发中的互补特性,特别是在生成式 AI 和大语言模型的发展背景下。DotNetPy 是一种新兴的.NET 库,旨在解决传统互操作方案的性能瓶颈和复杂性。它通过封装 Python 原生 C API,允许 C#进程内直接执行 Python 代码,无需外部脚本或复杂构建。与 IronPython 和 Python.NET 相比,DotNetPy 更具高性能、低延迟,支持 Native AOT 和简化的依赖管理。此外,DotNetPy 降低了内存泄漏风险,提高了开发效率,推动 CI/CD 稳定性。文章强调了 DotNetPy 在.NET 与 Python 桥接技术中的重要性,展现了其未来潜力。

Redis:延迟双删的适用边界与落地细节

https://www.cnblogs.com/denglei1024/p/19771160

文章探讨延迟双删的概念及其原理。延迟双删旨在解决数据库更新后缓存中的旧值问题,尤其在高并发情况下容易导致脏读。主要过程是更新数据库后,立即删除缓存,再延时删除一次,以防止旧值重新写回缓存。文章明确了延迟双删适用的场景和边界条件。延迟时间需根据具体业务情况覆盖读请求完成的时间上界,而不是随意设定。同时提供了示例代码,强调第二次删除的稳健实现。

别再踩坑了!SQL Server 数据类型那点事儿,看懂这篇少背三个锅

https://www.cnblogs.com/shenchuanchao/p/19777640

文章由一位资深.NET 程序员分享关于 SQL Server 数据类型的经验。作者详细解释了 char 与 varchar、varchar 与 nvarchar、float 与 decimal 的区别,以及如何根据需求选择合适的数据类型。他强调,使用正确的数据类型能够避免数据存储中的常见错误,如乱码和精度丢失。文章最后提供了 SQL Server 数据类型与 C#类型的对应表,帮助读者更好地理解和应用。整体文章简洁明了,实用性强,适合程序员提高数据库操作的准确性。

一款基于 .NET 开源、跨平台应用程序自动升级组件

https://www.cnblogs.com/Can-daydayup/p/19772647

GeneralUpdate 是一款基于.NET 的开源跨平台应用程序自动升级组件,遵循 Apache 2.0 协议。它减少了更新过程中的资源消耗,提供一键启动示例,帮助开发者快速集成更新功能。该组件适用于 WPF、WinForms、MAUI 等桌面应用程序及控制台应用。功能包括断点续传、逐版本更新、二进制差分更新、增量更新、强制更新等,支持实时推送更新通知和用户体验优化。拥有多分支开发支持、OSS 极简更新和回滚备份等功能,确保更新过程的安全可靠。该项目已发布在 GitHub 上,适合多平台应用程序。项目获得 C#/.NET 优秀项目认证,提升了开发效率。

Microsoft Agent Framework Skills 执行 Scripts(实战指南)

https://www.cnblogs.com/chenyishi/p/19760871

本文介绍了 Microsoft Agent Framework 的 Agent Skills,强调其重要性和易被忽视的特点。Agent Skills 是为 Agent 提供特定能力的可移植指令和脚本。文中详细说明了 Skill 的目录结构,核心是 SKILL.md 文件和 Python 脚本,同时指出 C# 目前不支持自动执行脚本的重要问题。通过自定义 Python 执行器的方法,实现了 Python 脚本的执行。全篇结合示例,提供了实用的指导和注意事项。

.NET 对象转 JSON,到底有几种方式?

https://www.cnblogs.com/shenchuanchao/p/19762829

这篇文章讨论了.NET 中对象转 JSON 的三种主要库:System.Text.Json、Newtonsoft.Json 和 Utf8Json。System.Text.Json 是微软官方提供的库,性能优秀,适合新项目。Newtonsoft.Json 是老牌库,功能丰富,适合维护老项目。Utf8Json 主要追求极致性能,适用于对性能要求极高的场景。文章详细介绍了每个库的优缺点和适用场景,帮助开发者根据需求选择合适的 JSON 处理库。

多租户下的系统业务开发过程探讨

https://www.cnblogs.com/wuhuacong/p/19768616

这篇文章讨论了多租户系统的数据库设计与项目框架生成。作者强调数据库设计的重要性,提出使用前缀区分表名与使用 PowerDesigner 工具提高设计效率。文章推荐所有业务表应包含 tenant_id 字段,并提供生成全局唯一 ID 的方案,如 Snowflake。接着,作者介绍了使用代码生成工具 Database2Sharp 生成项目框架的过程,强调了代码生成的便利性与高效性。最后,文章指出后期可增加约束以提高数据库安全性与性能。

物联网浏览器(IoTBrowser)-js 开发人脸识别

https://www.cnblogs.com/yizhuqing/p/19769770

本文探讨了将人脸识别应用于农产品实名收购系统的两种技术方案,分别基于.NET 和 JavaScript 开发。第一种方案使用.NET 平台下的 ViewFaceCore 开源 SDK,能高效进行人脸检测和特征提取。后端代码实现了人脸识别和比较功能。第二种方案利用 face-api.js,这是一种基于 TensorFlow.js 的强大人脸识别库,支持实时人脸追踪和跨环境使用。两种方案均能有效集成至物联网浏览器,满足应用需求。

用 Microsoft Agent Framework 构建 SubAgent(Multi-Agent)

https://www.cnblogs.com/chenyishi/p/19774090

本文展示了如何利用 Microsoft Agent Framework 和 Executor + Workflow(DAG)模式实现 SubAgent 架构。文章通过代码示例解释了并发处理、消息路由与聚合策略,强调责任分离及其在任务观测和测试中的优势。核心概念包括 Planner/Orchestrator 负责任务拆解,SubAgent 作为执行器,Workflow/DAG 实现节点串联,支持并行与聚合。示例代码展示了如何初始化 OpenAI 客户端和构建工作流,强调流式执行及监听输出。

使用 C# 删除 PDF 中的数字签名

https://www.cnblogs.com/jazz-z/p/19774545

本文介绍了在 .NET 开发中,如何使用 C# 和 Free Spire.PDF 库移除 PDF 文档中的数字签名。数字签名实际上是嵌入在表单中的专属签名字段。通过几行代码,可以加载 PDF 文档,遍历表单字段,定位并删除签名字段,最终保存处理后的新 PDF 文件。作者解释了倒序遍历的必要性,以避免索引错位。该方法支持移除所有类型的签名,包括可见和隐藏的签名。此外,文章提供了环境配置和代码示例,强调了备份原文件的重要性。

.NET 10 新特性概览与相关文章索引

https://www.cnblogs.com/tianqing/p/19750358

.NET 10 和 C# 14 主要带来了语言表达与框架能力的增强。C# 14 引入了扩展成员、field 关键字、空条件赋值、带修饰符的简单 lambda 参数和顶级程序等新特性。这些改进使代码更简洁、可读性增强。CLI 方面支持发布多个 RuntimeIdentifier,从而简化跨平台工具的分发和运维流程。此外,ASP.NET Core 也得到了实用的增强,提升了开发体验。整体来看,这些更新更注重实际开发中的易用性和自然性。

.NET 源码生成器基于 partial 范式开发和 nuget 打包

https://www.cnblogs.com/xiangji/p/19781120

本文探讨了 C#中 partial 范式在 SourceGenerator 开发与测试中的应用,重点在于如何自动生成属性以避免重复创建对象。通过重写 ForAttributeWithMetadataName,提出 CreateByAttribute 方法来遍历 SyntaxTree 查找标记属性和方法,支持更多需求。GenerateLazyTransform 处理为 LazyPropertySource 和 LazyMethodSource,确保类型符合 partial 修饰符。文章提供了详细的生成器代码示例,展示了如何实现这一过程。整体内容深入且实际,适合有经验的开发者。

让 AI 代理拥有"专业技能包":Microsoft Agent Skills

https://www.cnblogs.com/chenyishi/p/19754984

本文介绍了如何在 Microsoft 代理框架中使用 Agent Skills,为代理提供可重用的领域专业技能包。通过.NET 和 Python,代理可动态加载所需技能,提升能力,而不需修改核心指令。Agent Skills 以开放格式封装专业知识,包括 SKILL.md 文件、脚本、参考文档和资源。使用 Agent Skills 可确保一致性,增加功能,促进互动性。示例代码展示了如何在.NET 和 Python 中实现技能加载。

【译】让开发流程更高效:为 Visual Studio 订阅用户解锁 Syncfusion

https://www.cnblogs.com/MeteorSeed/p/19777325

文章探讨了 Syncfusion 的优势,尤其是对 Visual Studio 订阅用户的好处。Syncfusion 提供超过 1600 个 UI 组件,支持多平台开发,能显著降低开发时间并提升应用质量。文章详细介绍了 Essential Studio 企业版、BoldSign 电子签 API 和 Bold BI 的功能及其适用案例,强调了这些工具在快速交付企业级应用中的重要性。特别适合开发业务线应用、SaaS 产品和客户解决方案,同时兼顾合规性要求。此外,Dev Essentials 会员也可享受相关权益,增强了团队的开发能力与效率。

HagiCode Skill 系统技术解析:如何打造可扩展的 AI 技能管理平台

https://www.cnblogs.com/newbe36524/p/19762110

本文深入解析了 HagiCode 项目的技能管理系统,涵盖四大核心功能的技术实现。该项目旨在扩展 AI 代码助手的能力,满足不同开发团队的需求。它使用 ASP.NET Core 和 Orleans 构建后端,前端使用 TanStack Start 和 React。系统架构注重命令执行与业务逻辑的分离,提升用户体验。本文适合对 AI 扩展性感兴趣的开发者,提供了实践经验与技术方案。

SpringCloud 进阶--Sentinel 流量防卫兵

https://www.cnblogs.com/alineverstop/p/19762735

本文介绍了 Sentinel 流量防卫机的功能和使用方法。Sentinel 可以解决微服务中雪崩问题,提供熔断和降级机制。它支持丰富的应用场景,提供实时监控和广泛的开源生态。文章详细描述了安装与部署过程,以及如何在服务中集成 Sentinel 依赖。讨论了流量控制策略,如快速拒绝、预热和排队等待,并介绍了限流算法,包括漏桶算法和令牌桶算法。读者可以根据具体情况选择合适的限流策略,使用 @SentinelResource 注解进行方法级的限流管理。整体内容结构清晰,实用性强。

GLM 提前过五一

https://www.cnblogs.com/newbe36524/p/19786316

Hagicode 提供了多种 CLI 工具的集成指南,涵盖 Claude Code、GitHub Copilot 等。通过抽象层接入 AI 模型,支持新的 GLM-5.1 语言模型。Hagicode 利用 AIProviderType 枚举定义多种 CLI 提供商,并设定对应模型的参数配置,确保灵活兼容。文中详细列出支持的模型及其配置,突显 GLM 系列的改进和实用性。

值类型与引用类型:别再只背"栈和堆"了,看这 4 个实际影响

https://www.cnblogs.com/shenchuanchao/p/19791829

本文深入探讨了 C#中值类型与引用类型的区别,强调了在实际编码中的应用及常见误区。作者通过生动的类比和实例,讲解了赋值和参数传递的不同机制。值类型赋值是独立的,而引用类型赋值则是共享的钥匙,变更会影响原对象。特别提到,引用类型传参时,仅能修改它内部的值,而不能更换引用对象。文章还解释了 null 值的问题,值类型无法为 null,引用类型则能。最后,作者强调了性能问题,频繁使用引用类型可能导致性能下降。整体内容实用且清晰,适合开发者学习。

AI Agent 跑完任务怎么通知你?我写了个微信推送服务

https://www.cnblogs.com/yyfh/p/19792114

这篇文章介绍了如何使用微信推送服务来及时接收数据库告警。作者展示了使用 C#和.NET 9 Minimal API 构建的推送服务,具有零第三方依赖、单文件架构和嵌入式资源的特点。文章详细说明了获取微信测试号所需的参数和快速启动服务的步骤,包括发通知的测试。此项目支持 GET 和 POST 请求,能够方便地与 Webhook 对接,从而在多种场景下满足通知需求。该服务简单易用,适合需要及时警报的开发者。

【译】 再次革新 .NET 的构建和发布方式(一)

https://www.cnblogs.com/MingsonZheng/p/19792308

这篇文章讨论了.NET 在产品构建与发布中的转变。随着需求的增加,.NET 团队面临着更新和维护成本上升的问题。为了应对这些挑战,他们探索了统一构建项目,结合虚拟单体代码库与垂直构建策略。文章回顾了.NET 的演变,讲述了从多个独立代码库过渡到更加集成的构建模式的经历。此外,作者探讨了发布安全补丁的复杂性,强调了同步更新的重要性与所面临的挑战。这为理解.NET 的构建流程及其优化提供了深入的视角。

DotNetGuide 突破了 10K + Star,一份全面且免费的 C#/.NET/.NET Core 学习、工作、面试指南知识库!

https://www.cnblogs.com/Can-daydayup/p/19792320

DotNetGuide 是一个全面、免费的 C#/.NET/.NET Core 学习和工作指南,涵盖基础知识、学习路线、开发实战与编程技巧等。它还提供面试题、简历模板及学习资源,助力开发者高效进阶。内容持续更新,适合所有层次的.NET 开发者。此外,DotNetGuide 在 GitHub 的 Star 数已超过 10k,显示出其受欢迎程度。

AI 编程盛行的时代,为什么 "『DC- WF2W』" 仍然具有必要性?

https://www.cnblogs.com/xdesigner/p/19769705

MWGA 正式更名为 DC WinForm To Web。AI 编程工具在代码生成方面具有显著优势,但重写存量 WinForms 系统面临技术局限。AI 无法理解隐性业务知识,也无法覆盖异常分支。DC-WF2W 重视存量代码的保留与迁移,兼顾业务逻辑的一致性。AI 虽提高开发效率,但对复杂企业应用的调整与迁移,需结合现有系统的长期验证与经验积累。这是 AI 全量重写不可替代的核心目标。

国际周报

话题

在 dotnet/runtime 中使用 Copilot 编码代理十个月 - .NET 博客

https://devblogs.microsoft.com/dotnet/ten-months-with-cca-in-dotnet-runtime/

在 dotnet/运行时仓库中使用 GitHub Copilot Coding Agent 10 个月的回顾结果。

文章解释了如何创建和关闭 PR,合并数量和数量,它们与其他仓库的比较,具体 PR 示例(哪些是和哪些),以及在运行时用 C++ 等原生代码做哪些任务容易完成,哪些难。

TechEmpower 框架基准测试终止: · 第#10932 期 · TechEmpower/FrameworkBenchmarks

https://github.com/TechEmpower/FrameworkBenchmarks/issues/10932

宣布终止已发布多种语言和框架基准的 TechEmpower 框架。

宣布 PowerShell 7.6(LTS)GA 发布 - PowerShell 团队

https://devblogs.microsoft.com/powershell/announcing-powershell-7-6/

PowerShell 7.6(LTS)现已正式发布。

该版本基于 .NET 10(LTS),包含多项改进,包括模块更新、引擎可靠性提升、更好的制表表完成以及改进的原生命令处理。

Microsoft.Data.SqlClient 7.0 来了:一个更精简、更模块化的 SQL Server 驱动 | Microsoft 社区中心

https://techcommunity.microsoft.com/blog/sqlserver/microsoft-data-sqlclient-7-0-is-here-a-leaner-more-modular-driver-for-sql-server/4503173

Microsoft.Data.SqlClient 7.0 已发布。

该版本包含驱动程序模块化,可分离与 Azure/Entra 认证相关的代码,并简化重量级,包括认证插件、改进的异步读取性能及分组复用(预览)、增强的 Azure SQL 路由支持等。 NET 10 支持,提升生活质量相关的改进,等等。

骑士 2026.1 发布候选人发布! | .NET 工具博客

https://blog.jetbrains.com/dotnet/2026/03/20/rider-2026-1-release-candidate/

Rider 2026.1 发布候选版本已发布。

本版本包括对基于文件的应用(如"dotnet run app.cs")的支持、反汇编查看器、NuGet 包管理器控制台(预览版)、改进的 MAUI 支持、更好地与 Unity 性能分析器的集成、Windows 游戏的混合模式调试支持、改进对 C# 扩展成员的支持以及 C 语言# 包含新功能,如对 15 的早期支持。

ReSharper 2026.1 候选发布! | .NET 工具博客

https://blog.jetbrains.com/dotnet/2026/03/20/resharper-2026-1-release-candidate/

ReSharper 2026.1 版本候选版已发布。

该版本包括新的运行时性能监控窗口、支持 Visual Studio Code 兼容编辑器、改进对最新 C#的支持、更快的代码解析和索引、提升的非进程模式稳定性、更新的编辑器界面,以及对 ReSharper C++ 的改进。

Avalonia WebView 开源 - Avalonia UI

https://avaloniaui.net/blog/the-avalonia-webview-is-going-open-source

宣布 WebView 作为 Avalonia 加速的控制(=商业)平台,将作为 Avalonia 12 的一部分开源。

WebView 控制的优点是通过使用操作系统原生的网页渲染器保持应用程序的紧凑性,而现代应用在 OAuth 流程和文档显示等领域是不可或缺的组成部分,因此决定开源。

发布

文章、幻灯片及更多内容

使用 NDLOCR-Lite 的 ONNX 模型读取 .NET 中图像文本 - Qiita

https://qiita.com/yamaokunousausa/items/262d6717d4ffdfd63b90

如何在.NET 中使用国家国会图书馆(NDL)提供的 OCR 应用程序 NDLOCR-Lite 的 ONNX 模型来阅读文本。

强制将未接口类塞入接口

https://zenn.dev/radian_jp/articles/275d43cb7c9142

关于如何动态包装一个没有实现接口的类,就像它在实现接口一样。

在开发流程中释放更多力量:Visual Studio 订阅者 Syncfusion - Visual Studio 博客

https://devblogs.microsoft.com/visualstudio/syncfusion-for-visual-studio/

了解 Syncfusion 在 Visual Studio 订阅(Dev Essentials、专业版、企业版)上的优势。

如何在 Visual Studio - Qiita 中自动化构建时的单元测试

https://qiita.com/KM_20005/items/b858c8e501c3a9a32dd0

学习如何在 Visual Studio 的构建时自动化单元测试。 它还提到了测试失败时会发出声音的设置。

初学者生成式人工智能 .NET:.NET 10 版本 2 - .NET 博客

https://devblogs.microsoft.com/dotnet/generative-ai-for-beginners-dotnet-version-2-on-dotnet-10/

生成式人工智能初学者版.NET 现已推出,这是一门关于.NET 应用生成式 AI 实现的课程。

版本 2 对课程进行了彻底重组,且 基于 NET 10 和 Microsoft.Extensions.AI 的代码。

Windows 社区工具包 - Microsoft 如何利用 Uno 平台快速发布

https://platform.uno/blog/windows-community-toolkit-how-microsoft-uses-uno-platform-to-ship-fast/

Windows 社区工具包如何通过 ToolKit Lab 利用 Uno 平台加速内部开发循环。

Azure 可信签名重访 Dotnet Sign

https://weblog.west-wind.com/posts/2026/Mar/02/Azure-Trusted-Signing-Revisited-with-Dotnet-Sign

学习如何使用"dotnet sign"命令和 Azure 可信签名进行签名。

在 Mac 上的 LCD 显示器上查看资源使用情况 - . .NET - Qiita

https://qiita.com/yamaokunousausa/items/e7132f7c08178e39853d

关于在 macOS 上可视为 USB HID 设备的 LCD 显示器上显示资源使用情况的实现。

文章解释了如何在 macOS 上操作 LCD 显示器并获取资源使用情况。

[VS 代码] 如果 ILSpy 用于启动的.NET 可执行文件路径被破坏,该怎么办

https://zenn.dev/st_little/articles/what-to-do-if-il-spy-crashes

如果 Visual Studio Code 扩展 ilspy-vscode 找不到通往"dotnet"命令的路径该怎么办?

在 Fody - Qiita 中实现来电者信息属性

https://qiita.com/fits/items/bf318cc398d8d03acc2b

如何在 Fody 中获取(嵌入)来电者信息,比如"CallerMemberName"属性。

文章提供了一个定义名为"CallerType"的属性以获取调用者的类型示例。

将 PowerToys 的核心从 C++ 重构到 C#

https://noraajunker.ch/PowerToys-refactor/

关于重写运行器(调用每个函数的过程),该过程用 C++ 实现,PowerToys 和 C#。

加速 .NET MAUI 开发与 AI 代理 - .NET 博客

https://devblogs.microsoft.com/dotnet/accelerating-dotnet-maui-with-ai-agents/

介绍 Syncfusion 用于加速.NET MAUI 开发的 AI 代理技能。

[.NET] 分层编译优化一窥

https://zenn.dev/prozolic/articles/487b159739d831

本文在检查通过分层编译生成 .NET 运行时优化的汇编代码时进行解释。

转播。 助手:一个使用 .NET 和 OpenAI 的多代理语音机器人 - .NET 博客

https://devblogs.microsoft.com/dotnet/rt-assistant-a-realtime-multiagent-voice-bot-using-dotnet-and-open-ai-api/

关于利用 OpenAI 实时 API 在.NET 中实现多代理语音机器人。

[C#] 设置在 Aspire CLI (ver13.1.2) - Qiita

https://qiita.com/KM_20005/items/df26e7ddfb10b594be7d

在 Aspire CLI 中启用热重载的选项已被改为设置。

当工业相机控制应用在一个月后突然下线(第一部分)------ 如何寻找手柄泄漏点并设计用于长期运行的日志

https://comcomponent.com/blog/2026/03/11/002-handle-leak-industrial-camera-long-run-crash-part1/

调查导致工业摄像头控制应用连续运行约一个月后崩溃的问题,以及导致手柄泄漏的问题。

用 C#编写.NET 垃圾回收器 - 第 9 部分:冻结片段与新分配策略

https://minidump.net/writing-a-net-gc-in-c-part-9/

这是关于在 C#中实现.NET 垃圾回收器系列文章的第九篇。 关于冻结区段(不符合 GC 资格)和配置策略。

库、仓库、工具等

arika0093/lint4sg:一个非常严格的 dotnet 源生成器项目 linter。

https://github.com/arika0093/lint4sg

用于源代码生成器项目的 Roslyn 分析器,专注于大型语言模型中的代码生成。

cincuranet/NtpTick:一个简单、轻量级的 .NET 客户端 NTP(网络时间协议)客户端库。

https://github.com/cincuranet/NtpTick

一个用现代 C#编写的简单 NTP 客户端实现。

今日人物

亚瑟·约翰·罗宾·葛瑞尔·米尔纳(英语:Arthur John Robin Gorell Milner,1934 年 1 月 13 日---2010 年 3 月 20 日),生于英国普利茅斯,计算机科学家。1991 年获得图灵奖。他是英国皇家学会成员,爱丁堡皇家学会会员,ACM 会士。出生于一个军人家庭,早年就读于伊顿公学。后加入英国皇家工程兵部队,获得少尉军衔。1952 年入读剑桥大学国王学院,1957 年毕业,之后的第一个工作是教师,然后在 Ferranti 公司当程序员。此后他进入学术界,先后在伦敦城市大学,斯旺西大学,斯坦福大学任职。1973 年回到英国爱丁堡大学,在爱丁堡大学任职期间,他开发了函数式编程语言,ML,并和他的同事一起完成了 LCF 的开发。在离开爱丁堡前,罗宾·米尔纳向现在的爱丁堡大学信息学院提供了一笔捐款并成立了每年一次在爱丁堡大学信息学院举行的以他名字命名的罗宾·米尔纳演讲[5],被邀请的演讲者都是对理论计算机科学有重大贡献的学者。1995 年,罗宾·米尔纳回到母校剑桥大学任教,并担任剑桥大学计算机实验室主任。2009 年起,米尔纳回归爱丁堡大学担任计算机科学教席。

C# .NET 交流群

相信大家在开发中经常会遇到一些性能问题,苦于没有有效的工具去发现性能瓶颈,或者是发现瓶颈以后不知道该如何优化。之前一直有读者朋友询问有没有技术交流群,但是由于各种原因一直都没创建,现在很高兴的在这里宣布,我创建了一个专门交流.NET 性能优化经验的群组,主题包括但不限于:

希望能有更多志同道合朋友加入,分享一些工作中遇到的.NET 问题和宝贵的分析优化经验。目前一群已满,现在开放二群。 可以加我 vx,我拉你进群: ls1075 另外也创建了 QQ Group: 687779078,欢迎大家加入。

相关推荐
InCerry1 天前
C# .NET 周刊|2026年3月4期
.net周报·.net周刊
InCerry3 天前
C# .NET 周刊|2026年3月3期
.net周报·.net周刊
InCerry4 天前
C# .NET 周刊|2026年3月2期
.net周报·.net周刊
InCerry21 天前
C# .NET 周刊|2026年3月1期
.net周报·.net周刊
InCerry1 个月前
C# .NET 周刊|2026年2月4期
c#·.net周报·.net周刊
InCerry1 个月前
C# .NET 周刊|2026年2月3期
.net周报·.net周刊
InCerry1 个月前
C# .NET 周刊|2026年2月2期
.net周报·.net周刊
InCerry1 个月前
C# .NET 周刊|2026年2月1期
.net周报·.net周刊
InCerry1 个月前
C# .NET 周刊|2026年1月4期
.net周报·.net周刊