首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
.NET 10 新特性实战:轻量级实时数据推送 - Server-Sent Events 完全指南
在 .NET 应用程序中,你可能需要实现从后端到前端的实时更新功能。你有几种选择可以实现这一点:轮询 (Polling) — 前端不断检查服务器是否有新数据SignalR — 前端订阅一个事件,服务器使用 WebSockets 发送此事件服务器发送事件 (Server-Sent Events) (已在 .NET 10 ...
8-26 19:39
577
30+个.NET开发最佳实践:从Web Forms到.NET 8的血泪经验总结
在经历了Web Forms、MVC、.NET Core到如今.NET 8的十余年开发历程后,我亲眼目睹项目如何从整洁走向混乱——并非因为开发者不够努力,而是因为忽视了最佳实践。以下是我通过艰难教训或从优秀团队中学到的30多个最佳实践。我将以实用方式分享,只讲真正有帮助的内容。1. ...
8-26 19:34
522
2025年.NET开发者必知:10个提升生产力的LINQ核心模式
如果你是一名2025年的.NET开发者,却没有充分发挥LINQ的全部潜力,那么你正在编写不必要的冗余代码。多年来,我在企业应用、微服务甚至个人工具中反复使用这10个LINQ模式。这些模式不仅能减少样板代码——更能清晰地表达代码意图。让我们开始吧 🚀🔹 1. 过滤与投影...
8-26 19:33
511
为什么这个API慢得离谱?从400ms到40ms的.NET 9性能优化实战
和其他“简单”的性能抱怨一样,这个故事始于一个看似普通的性能问题。我们的.NET 9 Minimal API拥有所有时髦的特性——轻量级、快速启动、简洁的端点。但在生产环境中?平均延迟高达400毫秒。这还发生在热路径上。一个GET请求。甚至没有数据库调用。作为长期使用C#的开...
8-26 19:28
521
5个提升C#代码性能与可维护性的高级技巧:告别低效编码,打造现代.NET应用
现代.NET开发不仅要求代码功能正确,更需追求智能、高效、内存可控且具备扩展性的实现。无论您是为了优化性能还是可维护性,.NET(尤其是最新版本的C#)提供了远超基础的工具。然而,许多开发者仍在使用2010年代初的集合和多线程编码方式。以下五个技巧并非语法糖,而是...
8-26 19:27
522
不修改一行代码,为你的 .NET Core API 削减 200ms 延迟:基础设施、头部与缓存优化实战
不修改一行代码,仅通过优化基础设施、头部和缓存,即可为你的 .NET Core API 削减 200ms 的延迟。🧠 真正的性能瓶颈并不在我的代码中和大多数开发者一样,当我的 .NET Core API 开始感觉迟缓时,我首先想到了我的 IDE。我分析了控制器(Controller)。我检查了 Entit...
8-26 19:14
564
十年 .NET 老兵的血泪教训:这 17 个实战经验让你少走弯路
十年的 .NET 开发经验教给你的不仅是语法——更是生存技能。我维护过看似靠胶带粘合的代码库,曾在凌晨三点调试竞态条件,也曾因终于理解了一个空引用异常而欢呼。这不是又一份“最佳实践”清单,而是经过实战检验的真理——用惨痛教训换来的经验,让你不必重蹈覆辙。让...
8-26 19:14
537
告别 .NET Framework 陈旧习惯!这 7 个现代 C# 实践让你的代码更高效、更安全
.NET Core 和 .NET 8+ 带来了全新的应用构建方式——但许多开发者(和团队)仍被困在 .NET Framework 的习惯中。资历不等于现代化某些代码能运行,并不代表它应该出现在你 2025 年的代码库里。如果你一直在盲目复制资深同事的代码,可能会在不知不觉中导致应用性能更低...
8-26 18:58
545
.NET 9 架构对决:清洁架构 vs. 垂直切片架构,谁更适合现代开发?
基于 .NET 9 的最新发展以及 .NET 社区不断演进的架构模式,让我们探讨这两种流行的方法如何得到增强,以及哪种最适合现代应用程序开发。.NET 9:两种架构的游戏规则改变者.NET 9 引入了显著的改进,使两种架构方法都受益:性能增强.NET 9 最小 API 性能:每秒请求数提...
8-26 18:57
569
整洁代码的幻象:我们为何最终放弃了 MediatR
起初,MediatR 如同魔法一般。它解耦了一切。不再有服务之间的面条式耦合。只有整洁的 IMediator.Send() 调用,像行为良好的无人机一样穿梭于我们的处理程序之间。有一段时间,它工作得很好——尤其是在我们早期的清洁架构(Clean Architecture)实验中。但在我们开发第...
8-26 18:52
560
<<
<
…
5
6
7
8
9
10
11
12
13
14
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
5826
C#异步定时器:精准定期执行...
5944
WPF应用中融入ASP.NET Core...
5052
在C# .NET 8中使用MediatR实...
4929
精准数字处理:C#中四舍五入...
4835
.NET Core 中集成Dapper高级...
4420
延迟等待的艺术:C#中Task.D...
4368
串口通信利器:RJCP.DLL.Ser...
4427
.NET 性能分析:.NET 8 中的...
4246
轻松上传:C#中HTTP POST mu...
4463
WPF中轻松生成动态图表:实...
4213
C# 中的并发性:使用 Blocki...
4084
C#中轻松实现二维码和条形码...
4016
C#屏幕截图:轻松捕获活动窗...
4100
深入了解SOAPCore:在.NET 6...
4075
MediatR让进程内通信如此简...
5087
在 .NET8 中通过 RabbitMQ实...
3859
Microsoft.Extensions.Loggi...
3784
ASP.NET 后端开发:全面的路...
3727
C#串口通讯实战:基础功能及...
3837
WPF中轻松操控GIF动画:WpfA...
3809
ASP .NET Core 8+ 中的全局...
3656
.net中OpenCVSharp+Zxing读...
3767
解决WPF界面卡死等待问题:...
4826
解密C#中允许HttpClient使用...
3580
C#文件编码检测:轻松解析文...
3578
.NET —ToList 和 ToArray ...
3556
实现WPF多语言支持:简单灵...
3677
使用OpenXML在.NET 6中导出E...
3660
C#中Task.Run怎么用?能解决...
3654
.NET 9中ToList 和 ToArray ...
3527
WPF神器揭秘:一键截图,轻...
3507
在 ASP.NET Core Web API 中...
3501
还在到处加异常日志记录?试...
3602
掌握System.Text.Json中的多...
3592
.NET 中的 UUID 和 ULID:最...
3462
掌握ImageSharp:图像处理的...
3567
打造真实感十足的速度表盘:...
3566
轻松实现.NET应用自动更新:...
3560
深入理解WPF中的Dispatcher...
3531
ASP.NET Core .NET 8 中间件...
3372
C# 中的弱事件 — 如何避免...
3276
C# .NET 8中的自动映射器Aut...
3223
ZLogger v2 架构:利用 .NET...
3174
FluentFTP实战:轻松操控FTP...
3219
WPF魔法:轻松实现依赖注入...
4305
解密C# Socket通信:克服粘...
3192
WPF开发新境界:MVVM设计模...
3189
WPF大展示专业指南:轻松实...
3234
C# Socket通信:灵活传输DTO...
3011