首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
了解 .Net Core🎡 中的垃圾回收
了解垃圾回收.NET Core 中的垃圾回收是一项自动内存管理功能,用于处理应用程序的内存分配和释放。.NET GC 在托管堆上运行,托管堆是用于存储 C# 应用程序中实例化的对象的内存区域。GC 的工作🔄原理概括地说,.NET GC 的工作方式分为三个步骤:标记:GC 从根开始遍历...
3-12 16:29
105
如何在 .NET 的依赖注入配置中注册装饰器?
在本文中,我们将介绍几种不同的方法,以在 .NET 的依赖项注入配置中注册装饰器_(代理、包装器)。_此外,我们还将了解每个选项的优缺点。有时您可能希望在类之上实现包装器。这通常是为了扩展您正在包装的类的行为,并遵守开闭原则。例如,您有一个类:UsersRepositor...
3-12 16:19
104
通过实际示例了解 C# 中的 SOLID 原则
SOLID 原则是一组五项设计原则,旨在使软件设计更易于理解、灵活和易于维护。如果正确应用这些原则,可以产生干净而健壮的代码。在本文中,我们将深入探讨每个 SOLID 原则,并提供 C# 中的实际示例。单一责任原则 (SRP)单一责任原则指出,一个类应该只有一个改变的理...
3-12 16:14
137
C# 中的类型转换
揭开 C# 转换的神秘面纱:基础知识想象一下,在这样一个世界里,整数是王道,但有时,你需要浮点数的灵活性。这就是选角的用武之地。这是将数据从一种数据类型转换为另一种数据类型的艺术,就像为变量更换服装一样。在最简单的形式中,强制转换涉及显式告诉编译器您想要...
3-12 15:56
129
.NET 中的 3 个多线程示例
多线程似乎是我的听众非常感兴趣的东西。事实上,从一开始,我浏览次数最多的文章之一就是关于任务与线程的:软件面试问题:.NET 中的任务 VS 线程.NET 中的任务和线程有什么区别:初级到高级线程确实是软件工程师可以拥有的最重要的技能。这就是为什么在以后的文章中,...
3-12 15:53
99
C# 让后台服务变得更加容易。
几个月前,我写了一篇关于ASP.net 后台服务的文章。几天前,我把它展示给一位同事,他发现我的解决方案存在一些问题,这让我感到惊讶:我从控制器而不是业务层将工作发送到后台服务。我的解决方案不容易进行单元测试。我的解决方案不是通用的。所以我回到了绘图板,想出...
3-12 15:48
93
在 .NET 8 中使用 WireMock.NET 进行集成测试
在这篇文章中,我们将介绍如何创建和管理模拟 API,以便使用 WireMock.NET 进行集成测试。集成测试保证了软件系统内不同组件之间的无缝通信,并且识别并解决了任何潜在问题。这种测试方法对于验证我们的应用程序与内部和外部 API 之间的交互至关重要,确保遵守预定义的...
3-11 19:37
92
使用 ValueTask 异步操作的节省内存
在现代 C# 编程中,了解异步构造(如 和 )之间的细微差别对于优化内存使用率和应用程序性能至关重要。这个故事深入探讨了一个真实世界的场景,在这个场景中,使用可以节省大量内存。通过实际用例和基准分析,我们探讨了如何有效地处理异步操作,同时最大限度地减少内存...
3-8 8:5
127
快如进行快速 LINQ 查询:立即提升 C# 应用性能
LINQ 是语言集成查询的首字母缩写词,是 C# 中的一项强大功能,使开发人员能够使用既富有表现力又易于理解的语法对集合和数据库执行复杂的查询。然而,优化 LINQ 查询以提高效率对于确保最佳应用程序性能至关重要。本文深入探讨了在 C# 中增强 LINQ 查询性能的各种策略...
3-8 7:57
230
.NET 高级开发人员常见的20 个面试问题
作为一名经验丰富的 .NET 高级开发人员,浏览面试需要对关键概念和原则有深刻的理解。在这篇博文中,我们将探讨面向 .NET 高级开发人员的 20 大面试问题,并附有简明的答案和说明性代码示例。1. 抽象类与接口答:抽象类可以有实现,而接口不能。两者都支持抽象,但接口...
3-4 8:43
402
<<
<
…
53
54
55
56
57
58
59
60
61
62
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
2409
C#异步定时器:精准定期执行...
2421
WPF应用中融入ASP.NET Core...
1812
在C# .NET 8中使用MediatR实...
1561
延迟等待的艺术:C#中Task.D...
1309
WPF中轻松生成动态图表:实...
1356
.NET Core 中集成Dapper高级...
1208
C#屏幕截图:轻松捕获活动窗...
1270
.NET 性能分析:.NET 8 中的...
1111
串口通信利器:RJCP.DLL.Ser...
1230
C# 中的并发性:使用 Blocki...
1056
轻松上传:C#中HTTP POST mu...
1278
C#中轻松实现二维码和条形码...
1043
C#串口通讯实战:基础功能及...
1095
精准数字处理:C#中四舍五入...
1295
解决WPF界面卡死等待问题:...
2151
ASP.NET 后端开发:全面的路...
873
WPF中轻松操控GIF动画:WpfA...
979
在 .NET8 中通过 RabbitMQ实...
838
深入了解SOAPCore:在.NET 6...
950
还在到处加异常日志记录?试...
941
.NET —ToList 和 ToArray ...
813
实现WPF多语言支持:简单灵...
916
.net中OpenCVSharp+Zxing读...
909
打造真实感十足的速度表盘:...
907
C#中Task.Run怎么用?能解决...
891
MediatR让进程内通信如此简...
1952
.NET 9中ToList 和 ToArray ...
717
解密C#中允许HttpClient使用...
708
Microsoft.Extensions.Loggi...
728
掌握ImageSharp:图像处理的...
813
掌握System.Text.Json中的多...
788
轻松实现.NET应用自动更新:...
776
.NET 中的 UUID 和 ULID:最...
653
FluentFTP实战:轻松操控FTP...
773
解密C# Socket通信:克服粘...
773
深入理解WPF中的Dispatcher...
767
C#文件编码检测:轻松解析文...
652
ASP .NET Core 8+ 中的全局...
638
C# 中的弱事件 — 如何避免...
633
WPF神器揭秘:一键截图,轻...
615
WPF魔法:轻松实现依赖注入...
1842
ASP.NET Core .NET 8 中间件...
605
使用OpenXML在.NET 6中导出E...
709
WPF开发新境界:MVVM设计模...
663
C# Socket通信:灵活传输DTO...
655
WPF大展示专业指南:轻松实...
756
深入FileSystemWatcher:C#...
756
.NET配置文件大揭秘:轻松读...
633
实用指南:C#中优雅更新GUI...
620