首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
攻克十大 .NET 性能反模式,提升应用效能与可扩展性
性能瓶颈会降低应用程序的效率、可扩展性和用户体验。许多 .NET 开发者在不知不觉中陷入了一些反模式,随着时间的推移,这些反模式会降低应用程序的性能。在本文中,我们将探讨十大 .NET 性能反模式,解释它们为何会产生问题,并展示如何使用优化后的解决方案来修复它们...
2-4 17:36
183
掌握 C# 中的 Fluent Builder 模式:从基础到高级方案
流畅构建器模式(Fluent Builder pattern)是一种强大的设计模式,它通过更具可读性和可维护性的接口来创建复杂对象。本文将深入探讨如何在 C# 中实现流畅构建器模式,探索基本和高级场景,并分析 .NET 标准库中的实际示例。为何使用流畅构建器模式?在深入实现之前,让...
2-4 17:32
156
在 .NET Controller 中返回 API 响应的最佳实践
想象这样一个场景:你正不知疲倦地致力于创建一个后端 API 响应系统,结果却出现了一个令人头疼的 bug,比如 “错误 500 内部服务器错误”。当它是 HTTP 响应给出的错误时,实际上它并非毫无头绪。你所需要了解的,是系统内部的工作原理,以便处理这些意外情况。如果你...
2-4 17:28
162
常见的 .NET Core 反模式以及如何避免它们
.NET Core 为构建健壮且可扩展的应用程序提供了一个强大的框架,但即使是经验丰富的开发者也可能陷入一些常见的反模式,这些反模式会阻碍代码的可维护性和性能。了解这些陷阱并采用最佳实践,能够确保代码简洁、高效且具有前瞻性。在本文中,我们将探讨.NET Core 中一些...
2-4 17:27
140
我只用了 3 行 C#:CPU 缓存行就将我的 API 速度提高了一倍
回想一下你上次优化 .NET 应用程序的情景。你可能关注了算法、数据库查询,或者异步模式。但如果我告诉你,仅仅改变数据在内存中的布局,就能让你的应用程序性能翻倍,你会怎么想?这并不是理论上的假设——我们最近在调查高流量 API 的性能问题时,就深刻体会到了这一...
2-4 17:20
182
C# 12 中的 Span<T> 和 Memory<T>:高级开发人员的性能助推器
作为ASP.NET开发人员,我们一直在寻找能让我们的Web应用程序运行得更快、更高效的方法。SpanT和MemoryT这两个强大的工具就能帮我们达成这一目标。它们于几年前被引入,如今已成为编写高性能C#代码必不可少的部分。让我们通过实际示例以及针对2024年C# 12的一些技巧,来...
11-24 20:52
175
面向 .NET 开发人员的 10 大高性能哈希库
在数据处理领域,速度和效率至关重要,尤其是在处理大型数据集时更是如此。我曾参与一个项目,该项目需要快速且可靠地处理海量数据(超过十亿个数值)。但正如我们将在本文中看到的那样,无论是用于数据完整性检查、哈希表还是文件校验和,选择正确的哈希算法都会对性能...
11-24 20:44
378
为旺季准备电子商务平台:从 .NET 8 到 .NET 9 的旅程
作为一家日活用户超过50万的中型电商平台的高级软件工程师,为旺季做准备始终是一项高风险的挑战。去年,在2023年黑色星期五期间,我们基于.NET 8的平台面临着重大的性能障碍。这些经验教训影响了我们今年的策略,目前我们正在测试.NET 9预览版的功能以优化我们的系统。...
11-24 20:38
148
C# 中的异步流与数据处理管道
在当今世界,应用程序常常需要处理大量数据或进行实时更新。无论是股票价格的流式传输、日志处理,还是用户生成的内容,设计一个响应迅速且高效的数据管道都至关重要。借助 C# 的异步流和 IAsyncEnumerable,我们能够创建异步数据处理的无缝流程,同时保持出色的可读性...
11-24 20:28
266
C# 中的高性能动态属性访问方法
在C#编程中,动态访问对象属性是一项常见需求,尤其在构建灵活且可扩展的应用程序时更是如此。设想一下,你正在开发一个需要处理许多不同对象类型的系统,而且这些对象的属性可能会随着需求的变化而改变。如果你希望代码能够动态访问这些属性,而非对每个属性访问都进行...
11-22 18:15
284
<<
<
…
11
12
13
14
15
16
17
18
19
20
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
3042
C#异步定时器:精准定期执行...
3037
WPF应用中融入ASP.NET Core...
2368
在C# .NET 8中使用MediatR实...
2091
延迟等待的艺术:C#中Task.D...
1809
.NET Core 中集成Dapper高级...
1767
.NET 性能分析:.NET 8 中的...
1676
WPF中轻松生成动态图表:实...
1767
精准数字处理:C#中四舍五入...
1933
串口通信利器:RJCP.DLL.Ser...
1689
轻松上传:C#中HTTP POST mu...
1769
C#屏幕截图:轻松捕获活动窗...
1622
C# 中的并发性:使用 Blocki...
1489
C#中轻松实现二维码和条形码...
1429
C#串口通讯实战:基础功能及...
1469
深入了解SOAPCore:在.NET 6...
1407
在 .NET8 中通过 RabbitMQ实...
1257
解决WPF界面卡死等待问题:...
2421
ASP.NET 后端开发:全面的路...
1187
WPF中轻松操控GIF动画:WpfA...
1299
MediatR让进程内通信如此简...
2364
实现WPF多语言支持:简单灵...
1250
.NET —ToList 和 ToArray ...
1115
.net中OpenCVSharp+Zxing读...
1229
还在到处加异常日志记录?试...
1214
C#中Task.Run怎么用?能解决...
1214
Microsoft.Extensions.Loggi...
1103
ASP .NET Core 8+ 中的全局...
1047
打造真实感十足的速度表盘:...
1169
.NET 9中ToList 和 ToArray ...
1029
解密C#中允许HttpClient使用...
1017
WPF神器揭秘:一键截图,轻...
1004
掌握System.Text.Json中的多...
1123
掌握ImageSharp:图像处理的...
1114
深入理解WPF中的Dispatcher...
1095
轻松实现.NET应用自动更新:...
1088
C#文件编码检测:轻松解析文...
950
C# 中的弱事件 — 如何避免...
933
.NET 中的 UUID 和 ULID:最...
932
ASP.NET Core .NET 8 中间件...
927
使用OpenXML在.NET 6中导出E...
1027
在 ASP.NET Core Web API 中...
900
解密C# Socket通信:克服粘...
1005
WPF魔法:轻松实现依赖注入...
2108
FluentFTP实战:轻松操控FTP...
981
C# .NET 8中的自动映射器Aut...
850
ZLogger v2 架构:利用 .NET...
839
WPF大展示专业指南:轻松实...
1016
WPF开发新境界:MVVM设计模...
909
C# Socket通信:灵活传输DTO...
854