首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
EF Core 性能陷阱:10个悄然扼杀应用速度的隐形杀手及破解之道
Entity Framework Core 彻底改变了 .NET 应用程序的数据访问方式,但能力越大,责任越大。尽管它拥有优雅的 API 和开发者友好的方法,但如果使用不当,EF Core 也可能成为性能瓶颈。在多年的应用程序优化和无数代码审查(Pull Request)经验中,我总结了开发者最常陷入...
7-30 8:7
82
RESTful .NET API中的隐形杀手:为何事件优先架构是生存之道
💥 你的RESTful .NET API中的隐形杀手你刚刚发布了那个崭新的功能。一个在.NET 8+ API中精心设计的POST端点——经过xUnit测试验证,CI/CD流水线全绿通过。部署顺利,日志平静。你靠在椅背上,作为一名满意的架构师,已经开始构思下一个迭代的想法。然后警报来了。不是...
7-30 7:55
117
ActionBlock、TransformBlock 揭秘:微软流处理管道的核心组件与秘密武器
你的 .NET 代码可能整洁、异步且完全可测试。但它能每分钟处理 50,000 条消息...而不会崩溃吗?大多数开发者会使用:foreach (var item in items) await ProcessAsync(item)Task.WhenAll(...)甚至原生的 Task.Run这确实有效 —— 直到失效为止。微软多年前就通过创建一...
7-30 7:54
129
.NET 9 内存陷阱:GC优化竟成服务器性能杀手?
我们的生产 API 突然像破裂的水球一样疯狂泄漏内存。响应时间从 120 毫秒飙升至 8 秒。监控仪表盘像圣诞树一样亮起警报。经过 15 年的 .NET 开发,我以为已经见识过所有垃圾回收(GC)的噩梦。我错了。罪魁祸首?是 .NET 9 垃圾回收行为中一个微妙的变化,它正悄然扼杀...
7-29 8:26
107
你以为自己的C#代码很快?再好好想想
你觉得自己的C#代码速度够快?那可未必。拖慢你代码速度的并非算法——而是那些“隐形杀手”:一些细微且常见的C#错误,即便是经验丰富的开发者也容易忽略。这10种模式(有微软官方文档为证)正在拖慢你的应用、增加云服务账单,还会造成你意想不到的GC压力。🔥 影响...
7-29 8:21
104
.NET开发中的5个关键小习惯:从细节处提升代码质量
无论你已经编写.NET代码十年,还是刚刚发布第一个生产环境API,往往是那些小习惯带来了最大的改变。干净、高性能的代码很少来自大刀阔斧的重写,而是源于开发者每天做出的无数微小决策。本博客将开启一个系列,每次聚焦5个可操作的.NET见解,每个见解都基于实际使用场景...
7-29 8:18
100
.NET 10 + DDD 领域验证实战:构建坚不可摧的领域模型核心法则
好的,这是翻译后的技术文章,保留了原始代码块、格式和C#语言标识,并添加了一个吸引人的标题:领域验证(Domain Validation)是在 .NET 10 中使用整洁架构(Clean Architecture)和领域驱动设计(Domain-Driven Design, DDD)原则构建健壮、可维护应用程序的基石。它...
7-29 8:15
217
7个“危险”高效的C#特性:让冗余代码彻底消失
🧠 为什么这篇博客很重要你的工作不是写setter、空值检查或try-catch-finally,但大多数C#代码库却逼着你做这些。现代C#(9-13版本)通过以下特性消除了这些样板代码:编译器强制的契约运行时优化的行为微软背书的模式(在Azure和Copilot中使用)本文将介绍7个“危险...
7-29 8:13
106
.NET 10 + C# 12:九大现代模式重塑高效开发架构(开发者必看指南)
设计模式不仅仅是配方;它们是我们组织思维、扩展想法并使代码面向未来的方式。但随着框架的演进,并非所有模式都能保持其优势。随着 .NET 10 的发布和 C# 12 的成熟,该平台变得更智能、更精简、更具表现力。许多我们过去需要手动处理的问题——如配置、日志记录、端点...
7-29 8:10
103
.NET开发者必知的5个实用技巧:提升代码质量与性能的实战指南
.NET是一个功能强大的平台,但有时真正的力量在于知道如何正确使用其功能,或者何时完全不使用它们。在本系列中,我们将探讨5个实用技巧,这些技巧不仅能让你的代码更简洁、运行更快,还能揭示即使是经验丰富的开发者也会遇到的性能陷阱、内存低效问题和不良实践。这是...
7-29 8:9
151
<<
<
…
5
6
7
8
9
10
11
12
13
14
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
3448
C#异步定时器:精准定期执行...
3427
WPF应用中融入ASP.NET Core...
2736
在C# .NET 8中使用MediatR实...
2533
.NET Core 中集成Dapper高级...
2164
延迟等待的艺术:C#中Task.D...
2120
精准数字处理:C#中四舍五入...
2409
.NET 性能分析:.NET 8 中的...
1990
串口通信利器:RJCP.DLL.Ser...
2101
WPF中轻松生成动态图表:实...
2077
轻松上传:C#中HTTP POST mu...
2124
C# 中的并发性:使用 Blocki...
1812
C#中轻松实现二维码和条形码...
1805
C#屏幕截图:轻松捕获活动窗...
1904
深入了解SOAPCore:在.NET 6...
1786
在 .NET8 中通过 RabbitMQ实...
1635
C#串口通讯实战:基础功能及...
1740
MediatR让进程内通信如此简...
2721
ASP.NET 后端开发:全面的路...
1474
WPF中轻松操控GIF动画:WpfA...
1586
解决WPF界面卡死等待问题:...
2668
实现WPF多语言支持:简单灵...
1522
Microsoft.Extensions.Loggi...
1431
ASP .NET Core 8+ 中的全局...
1397
.net中OpenCVSharp+Zxing读...
1510
.NET —ToList 和 ToArray ...
1374
C#中Task.Run怎么用?能解决...
1464
还在到处加异常日志记录?试...
1448
.NET 9中ToList 和 ToArray ...
1309
解密C#中允许HttpClient使用...
1314
打造真实感十足的速度表盘:...
1422
掌握System.Text.Json中的多...
1419
WPF神器揭秘:一键截图,轻...
1286
深入理解WPF中的Dispatcher...
1365
掌握ImageSharp:图像处理的...
1360
C#文件编码检测:轻松解析文...
1248
轻松实现.NET应用自动更新:...
1356
使用OpenXML在.NET 6中导出E...
1349
在 ASP.NET Core Web API 中...
1214
.NET 中的 UUID 和 ULID:最...
1204
C# 中的弱事件 — 如何避免...
1186
ASP.NET Core .NET 8 中间件...
1182
ZLogger v2 架构:利用 .NET...
1154
C# .NET 8中的自动映射器Aut...
1147
WPF魔法:轻松实现依赖注入...
2355
解密C# Socket通信:克服粘...
1245
FluentFTP实战:轻松操控FTP...
1197
WPF开发新境界:MVVM设计模...
1185
WPF大展示专业指南:轻松实...
1245
C# Socket通信:灵活传输DTO...
1053