国内文章
从 Redis 客户端超时到 .NET 线程池挑战:饥饿、窃取与阻塞的全景解析
https://www.cnblogs.com/code-daily/p/18985234
本文探讨了在使用 StackExchange.Redis 作为 Redis 客户端时,出现超时问题的根源。问题通常涉及 .NET 线程池的管理,尤其是在高并发环境下。作者分析了线程饥饿、线程窃取和线程池阻塞等现象,并提供详细的代码示例及优化建议。StackExchange.Redis 依赖于底层线程资源,超时的原因可能源于网络负载、CPU 负载或线程池饱和。了解线程池的动态调整机制,对解决这些问题至关重要。
Visual Studio 现已支持新的、更简洁的解决方案文件(slnx)格式
https://www.cnblogs.com/Can-daydayup/p/18985033
解决方案文件是Visual Studio中用于管理项目的文件,后缀为.sln,包含项目引用关系和其他设置。现在支持新格式.slnx,提供更简洁的XML格式。文中展示了.sln文件的内容,包括不同项目的配置,如Entity、ConsoleApp、Service等,以及全局配置部分。这些信息帮助开发者理解解决方案的结构和配置方式。
dotnetty 内存泄漏的BUG修复了
https://www.cnblogs.com/fanliang11/p/18991484
本文探讨了物联网平台中dotnetty框架的内存泄漏问题,强调了内存和CPU稳定性的重要性。作者通过dump分析发现线程阻塞导致资源耗尽,并指出SingleThreadEventExecutor中的Task.Factory.StartNew是性能瓶颈。文章深入讲解了问题的来源和修改的代码,展示了如何通过微服务架构和异步编程来优化系统性能。凯亚物联网平台基于.NET8.0进行开发,支持多种协议和功能,具有强大的管理与监控能力。整体内容清晰且具有实用性。
Maui 实践:用 Channel 实现数据库查询时读取速度与内存占用的平衡
https://www.cnblogs.com/zhally/p/18989817
本文探讨了在数据库查询中过滤数据的方法,强调了优化性能与内存占用的重要性。作者提出使用 Channel 技术分批加载数据,逐个处理以节省内存并加速查询。此方法通过在加载阶段进行简单过滤,允许复杂运算在内存中进行,减少了数据库的负担。作者还考虑了在特定条件下提前终止数据加载以优化性能,具有较强的实用性和技术深度。
一个遵循 Material Design 设计规范、开源免费的 Blazor 组件库
https://www.cnblogs.com/Can-daydayup/p/18990504
MASA Blazor是一个遵循Material Design规范的开源Blazor组件库,旨在提高Web应用的开发效率。Blazor基于HTML、CSS和C#,允许开发者创建可重用组件。MASA Blazor提供丰富的预设组件如布局、弹框和全局异常处理,极大减少开发者的时间成本。项目开源且易于入门,包含多种模板供开发者快速使用。用户通过运行简洁的命令可快速创建和启动项目。该项目被收录于C#/.NET优质项目和框架中,有助于开发者了解最新动态。
如何用Roslyn干掉令人烦躁的硬编码Dbse
https://www.cnblogs.com/gmmy/p/18990157
本文探讨了如何在.NET中通过使用EF Core ORM来减少在DbContext中硬编码DbSet的情况。作者提出使用Roslyn和SourceGenerator来在编译期自动生成DbSet,从而避免运行时反射的性能开销。操作流程涉及将DbContext类标记为partial,并分析可注入类型。接着,生成新的efcontext.g.cs文件以完成编译。作者详细说明了SourceGenerator的机制,强调了其在提高代码维护性和执行效率方面的重要性。内容适合.NET 6及以上版本。
[原创]《C#高级GDI+实战:从零开发一个流程图》第07章:来吧,自定义"画布"控件!
https://www.cnblogs.com/lesliexin/p/18985184
本文讲述了如何独立出一个"画布"控件,以解决程序复用问题。通过创建类库和自定义控件,实现了流程图功能的完整性。文中详细介绍了控件的构建步骤,包括双缓冲、重写OnPaint方法、鼠标事件处理以及形状和连线的管理。此外,文中还有公共方法的定义,方便与外部交互。最后,作者提供了完整的代码供读者参考和尝试。
探索 MCP C# SDK:实现大语言模型与应用的无缝对接
https://www.cnblogs.com/zhulige/p/18990558
本文探讨了MCP C# SDK,以实现大语言模型与应用的无缝对接。MCP是一个开放协议,标准化了应用如何向大语言模型提供上下文信息。MCP C# SDK为开发者提供了便利,支持客户端和服务器端的开发。SDK主要包含三个包,分别用于主机、HTTP服务器和低级API。通过具体示例,文章展示了如何实现简单的MCP客户端和服务器,使得LLMs与外部系统的集成更加高效。
.Net Minimal APIs实现动态注册服务
https://www.cnblogs.com/ZYPLJ/p/18988989
.Net Minimal APIs动态注册服务的实现是文章的重点。本文详细讲解了如何通过修改EndpointExtensions类和IEndpoint接口,实现端点和服务的自动注册。代码示例展示了如何查找所有实现IEndpoint的类,并动态调用其MapEndpoints方法。同时,介绍了IEndpoint接口的修改,包括新增服务注册方法AddServices。文章逻辑清晰,适合需要实践的开发者解决具体问题。
Semantic Kernel Agent Orchestration编排
https://www.cnblogs.com/chenyishi/p/18989861
Semantic Kernel的Agent Orchestration框架通过协调不同专业的代理,克服了传统单代理系统的限制,提升了复杂工作流处理能力。文章详细介绍了五种编排模式,包括并发编排、顺序编排和群聊编排等。这些模式适应不同的实际场景,如并行分析和文档处理,展示了各个代理如何协同完成任务。虽然当前API处于实验阶段,可能存在变化,但整体框架具有创新性和实用性。文章内容清晰易懂,适合相关领域的开发者参考。
【Container App】创建Container App后发现Application URL不完整
https://www.cnblogs.com/lulight/p/18992109
这篇文章讨论了在内部访问环境中创建Container App服务后,Application Url不完整的问题。原因是Container App服务取消了默认域名,导致用户需要自定义域名并完成ICP备案。文章详细描述了备案的必要性和相关规定。为了解决这一问题,作者提出了两种自定义域名的配置方法,并提供了逐步的解决方案,包括创建Private DNS Zone、配置DNS后缀和生成自签名证书。使用自定义域名后,可以成功访问Container App。
多Agent协作入门:并发编排模式
https://www.cnblogs.com/edisontalk/p/-/quick-start-agent-orchestration-concurrent
本文讨论了Semantic Kernel中多Agent协作的不同编排模式,重点介绍了并发编排模式。传统单Agent系统在处理复杂任务时受到限制,因此需采用多Agent编排。Semantic Kernel支持多种模式,适配不同需求。通过简单的代码示例,展示如何实现并发编排,利用多个Agent独立处理同一任务,从而获得多角度的解答。此外,文中还说明了如何设置.NET项目和API配置,以方便开发和实验。整体结构清晰,便于理解。
多Agent协作入门:顺序编排模式
https://www.cnblogs.com/edisontalk/p/-/quick-start-agent-orchestration-sequential
本文介绍了Semantic Kernel中的顺序编排模式,适用于文档审阅、数据处理等任务。作者通过示例演示如何创建一个广告文案生成工作流,并详细说明了实现步骤,包括Agent的设置和.NET项目的配置。文章清晰地描绘了每个Agent在工作流中的作用,并包括了必要的代码示例以帮助读者理解和应用。考虑到当前技术的实用性和相关性,文章内容具有较高的技术深度和实用性,且易于阅读。
【译】借助 AI 驱动的代码审查,大规模提升代码质量
https://www.cnblogs.com/MeteorSeed/p/18988988
微软开发的AI驱动代码审查助手显著提高了开发人员的生产力和代码质量。它通过自动检查、建议改进和生成PR摘要来优化拉取请求(PR)的审查流程,帮助工程师快速发现问题,从而节省了时间。AI助手像人类审查员一样参与讨论,并能回答审查人员的问题。通过无缝集成到工作流程中,AI助手提升了审查效率和代码质量。实践表明,该助手在提高PR完成速度和代码整体质量方面具有明显成效。
Maui 实践:不要把 DataPackagePropertySetView 看作一层皮
https://www.cnblogs.com/zhally/p/18991307
文章详细探讨了在控件上动态扩展DragDrop能力的实现,强调了DragGestureRecognizer与DropGestureRecognizer之间的相互配合。重点介绍了DragStartingEventArgs、DragEventArgs和DataPackage等重要事件参数,阐明了数据传输的过程。作者提供了代码示例,说明了数据如何在应用程序中封装和传递。文中对各个类的功能进行了清晰的解读,适合开发者深入理解DragDrop机制和实施方法。整体内容具有实用性和技术深度。
DotNetty 1.0 发布,希望不会太晚。
https://www.cnblogs.com/fanliang11/p/18994761
本文介绍了dotnetty 1.0版本的发布,重点修复了内存泄漏问题并测试了运行稳定性。平台基于.NET8.0,支持微服务和物联网的开发,具备多协议适配能力。文章提供了演示链接和使用说明,建议通过nuget下载安装,并对任务调度进行优化的示例代码也进行了展示。凯亚物联网平台为用户提供统一管理和数据可视化等功能,有助于快速构建微服务系统。
【EF Core】带主键实体与无主键实体
https://www.cnblogs.com/tcjiaan/p/18993171
本文介绍了 EF Core 中主键的概念及其用法。主键在数据表中用于唯一标识记录,具有 UNIQUE 和 NOT NULL 的特性。文章详细列举了 EF Core 中如何自动识别主键,包括如何创建控制台应用,定义实体类,并使用 Sqlite 数据库。通过实例展示了主键识别的过程,强调了属性命名的重要性。同时,文中还提到了辅助工具使用的注意事项,对开发者有实用性。整体内容清晰易懂,适合初学者。
主题
MCP C# SDK 获得重大更新:支持协议版本 2025-06-18 - .NET 博客
https://devblogs.microsoft.com/dotnet/mcp-csharp-sdk-2025-06-18-update/
NuGet.org 包删除 -- 学习与预防 · NuGet/主页 · 讨论 #14429
https://github.com/NuGet/Home/discussions/14429
宣布推出 Uno 平台 6.1:CommandBarFlyout、Studio 更新等
https://platform.uno/blog/uno-platform-6-1/
Aspire 路线图(2025 → 2026) · dotnet aspire · 讨论 #10644
https://github.com/dotnet/aspire/discussions/10644
JetBrains .NET Tools 即将发生的变化 | .NET Tools 博客
https://blog.jetbrains.com/dotnet/2025/07/25/upcoming-changes-to-dotnet-tools/
发布
- aws/aws-sdk-net
- Azure/azure-cosmos-dotnet-v3
- Azure/azure-sdk-for-net
- Azure.AI.Agents.Persistent_1.1.0, Azure.Communication.CallAutomation_1.4. 1,Azure.ResourceManager_1.13。 2, Azure.ResourceManager.RedisEnterprise_1.2. 0 Azure.ResourceManager.RedisEnterprise_1.2.1,Azure.Storage.DataMovement_12.2. 0, Azure.Storage.DataMovement.Blobs_12.2. 0, Azure.Storage.DataMovement.Files.Shares_12.2. 0、Microsoft.Azure.WebJobs.Extensions.SignalRService_2.1。 0、Microsoft.Azure.WebJobs.Extensions.Storage_5.3。 5、Microsoft.Azure.WebJobs.Extensions.Storage.Blobs_5.3。 5, Microsoft.Azure.WebJobs.Extensions.Storage.Queues_ 5.3.5
- dotnet/奥尔良
- dotnet/SqlClient
- googleapis/google-cloud-dotnet
- Google.Cloud.Bigtable.V2-3.20.0、 Google.Cloud.Compute.V1-3.11. 0, Google.Cloud.Container.V1-3.35. 0、Google.Cloud.Firestore.Admin.V1-3.14。 0、Google.Cloud.NetworkConnectivity.V1-2.11。 0、Google.Cloud.PolicySimulator.V1-1.3。 0、Google.Cloud.Run.V2-2.15。 0、Google.Cloud.Video.Transcoder.V1-2.10。 0、Google.Maps.AddressValidation.V1-1.5。 0
- StackExchange/StackExchange.Redis
- unoplatform/uno
文章、幻灯片等
自行车输入装置系统建设
https://qiita.com/NSS_FS_ENG/items/046b7b2d77c76b9c3297
如何利用天文学在 C# 中计算太阳的位置
https://qiita.com/haystacker/items/22ac24d4e15f20ea46fc
在 ASP.NET Core Identity 中保存上次登录日期和时间
https://qiita.com/omt_teruki/items/b509774cba24109a1842
.NET MAUI 中的纵杆导航 UI
https://dev.to/icebeam7/joystick-navigation-ui-in-net-maui-5974
在 ASP.NET Core 中使用 Azure Monitor OpenTelemetry 输出日志
https://zenn.dev/zead/articles/application-insight
使用 C# SDK 配置的 MCP 工具创建 Azure AI Foundry 代理
https://qiita.com/ns_asaka/items/f5ee4b06aa7b4ed0fa5d
Pluralsight 上现已提供适用于 VS 订阅者的全新学习路径 - Visual Studio Blog
https://devblogs.microsoft.com/visualstudio/vss-pluralsight-2025-2/
ASP.NET Core 和 .NET 10 中的实时服务器发送事件
https://dev.to/antonmartyniuk/real-time-server-sent-events-in-aspnet-core-and-net-10-349b
快速编写 C# 需要了解的内容
https://zenn.dev/aakei/articles/b858aee98b602e
ReSharper 和 .NET Tools 2025.2 候选版本现已推出 | .NET Tools 博客
https://blog.jetbrains.com/dotnet/2025/07/24/resharper-dot-net-tools-2025-2-release-candidate/
The Rider 2025.2 候选版本来了! | .NET Tools 博客
https://blog.jetbrains.com/dotnet/2025/07/24/the-rider-2025-2-release-candidate/
通过设置 Microsoft 信任签名进行战斗
https://weblog.west-wind.com/posts/2025/Jul/20/Fighting-through-Setting-up-Microsoft-Trusted-Signing
解决 .NET 10 中的源生成器"标记属性"问题:探索 .NET 10 预览版 - 部分 4
询问模式与代理模式 - 为 .NET 选择正确的 Copilot 体验 - .NET 博客
https://devblogs.microsoft.com/dotnet/ask-mode-vs-agent-mode/
使用 JSON 模式和 .NET 进行组合、多态性和模式匹配 | 端金
https://endjin.com/blog/2025/07/composition-polymorphism-pattern-matching-with-json-schema-dotnet
如何在 Blazor 中测试导航管理器 - Qiita
https://qiita.com/KM_20005/items/0a8c8911b641e50e7ebd
尝试在 ASP.NET 核中通过IP地址控制访问 - 奇塔
https://qiita.com/omt_teruki/items/267b3fefc5d846d6d085
.NET Aspire 2:开发人员仪表板
https://www.telerik.com/blogs/net-aspire-2-developer-dashboard
解决 .NET 中的跨平台弹出问题
https://platform.uno/blog/solving-the-cross-platform-flyout-problem-in-net/
将文件拖放到服务器 (MudBlazor)
https://zenn.dev/tetr4lab/articles/3172abc12bad43
适用于 WPF 的 WinUI 3:在 Template Studio 中生成并允许在未打包中调试的步骤
https://zenn.dev/suusanex/articles/7deb1dbdf092fa
在 ASP.NET Core OData + Blazor WebAssembly + Kiota 中实现 Cookie 身份验证
https://zenn.dev/hat_kotap/articles/f54cf9519bfbd5
钩住 C# 中的非托管库加载以随心所欲地求解路径
https://zenn.dev/yamachu/articles/c17326623d3837
在 C# 中创建 MCP 服务器
https://zenn.dev/yakumo3/articles/acae16a28ddf47
[.NET 10.0] dnx 等 [预览 6]
https://zenn.dev/sator_imaging/articles/8535ccd699f677
深入探讨
[提案]: 从约束中推断类型参数 · 期数 #9453 · dotnet/csharplang
https://github.com/dotnet/csharplang/issues/9453
C# .NET 交流群
相信大家在开发中经常会遇到一些性能问题,苦于没有有效的工具去发现性能瓶颈,或者是发现瓶颈以后不知道该如何优化。之前一直有读者朋友询问有没有技术交流群,但是由于各种原因一直都没创建,现在很高兴的在这里宣布,我创建了一个专门交流.NET性能优化经验的群组,主题包括但不限于:
- 如何找到.NET性能瓶颈,如使用APM、dotnet tools等工具
- .NET框架底层原理的实现,如垃圾回收器、JIT等等
- 如何编写高性能的.NET代码,哪些地方存在性能陷阱
希望能有更多志同道合朋友加入,分享一些工作中遇到的.NET问题和宝贵的分析优化经验。目前一群已满,现在开放二群。 可以加我vx,我拉你进群: ls1075 另外也创建了QQ Group: 687779078,欢迎大家加入。