首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
高级 C# 编程:工程师开发最佳实践
精通C#不仅仅在于理解它的语法——更在于运用高级技术去解决复杂的现实世界中的难题。作为一名有着实际操作经验的资深软件工程师,我见识过对C#高级特性的细致入微的了解是如何提升代码质量、可维护性以及性能的。本指南将深入探讨C#在实际应用中的情况,这些应用在企业...
11-15 10:9
119
在 .Net Core 中使用 CancellationToken 的最佳做法
在本文中,我们将了解CancellationToken(取消令牌)以及如何使用它。在过去,当我们执行一些耗时的操作,比如耗时的数据库调用、耗时的HTTP调用时,我们没办法取消这些操作。在应用程序中使用CancellationToken有诸多好处,尤其在提高响应能力、资源管理以及用户体验方...
11-15 10:2
219
C# 中的灵活性:开/闭原则
编写灵活且易于维护的代码对于开发高质量软件至关重要。随着应用程序不断扩展,添加新功能或更改现有功能可能会变得十分困难,这意味着要改动那些原本运行良好的代码。而开闭原则(Open/Closed Principle,简称OCP)正是在这种情况下发挥作用的。开闭原则是软件设计中SO...
11-15 9:59
168
改变我编写代码方式
在过去的时间里,我一直在使用C#进行开发工作,并且已经准备好迎接下一个挑战了。当时我面对两位资深开发人员,其中一位是西门子的首席架构师。面试问题一开始都是最常规的那种,比如在C#方面的经验、对.NET框架的熟悉程度,或是应对特定编码挑战的方法。我自信满满地作...
11-15 9:45
143
在C#中将未使用的对象设置为 NULL 的好处
今天,咱们来探讨一个有趣却颇具争议的话题:在C#中,我们是否应该将未使用的对象设置为null呢?例如:Object obj = new Object();// 处理业务逻辑//...obj = null;有些人认为这样做能够释放内存并优化程序性能;另一些人则觉得这没有必要。那么,事实究竟如何呢?让我...
11-15 9:40
125
揭秘 .Net Core 中的 IServiceProvider
在本文中,我们将全面了解IServiceProvider。.NET Core中的IServiceProvider接口是依赖注入(DI)系统的核心部分。它定义了一种检索服务对象的机制,这些服务对象是由依赖注入容器管理的类型的实例。理解IServiceProvider的工作原理以及如何有效地使用它,对于构建模块...
11-15 9:38
276
C#中的加密和解密
在当今的数字世界中,保护敏感信息至关重要。确保数据保密性的一种方法是通过加密。在本文中,我们将探讨如何使用C#和AES加密算法对数据进行加密和解密。在C#中进行加密非常容易,下面为你展示:using System;using System.IO;using System.Security.Cryptography;class...
11-15 9:36
123
如何在 ASP.NET Core 中使用Refit
Refit是一个库,它通过在C#中生成类型安全、强类型的HTTP客户端接口,简化了对REST API的调用。它允许开发人员在无需编写显式的HTTP请求处理代码的情况下创建API客户端代码,从而减少了样板代码并提高了可维护性。在这篇博客文章中,我们将逐步介绍在ASP.NET Core应用程...
11-15 9:33
170
使 API 具有弹性:使用发件箱模式提高 .NET 微服务的可靠性
在微服务的世界里,我们都遇到过事情未按计划进行的情况。想象一下这样的场景:你有一个微服务,它会将新订单保存到数据库中,然后发布一条消息来通知其他服务。一切原本都很顺利……直到消息发布失败,导致你系统的部分环节失去同步。好消息是,这正是“发件箱模式”(...
11-15 9:30
167
C#中的任务与线程
开发人员经常使用Tasks和Threads来处理C#中的异步操作和管理并行性。然而,理解何时使用它们以及它们如何工作对于编写高效的代码至关重要。本文将讨论Tasks和Threads,比较它们的差异、优势和最佳实践。什么是Thread?Thread是程序中最小的执行单位。创建线程时,你会要...
11-15 9:26
136
<<
<
…
5
6
7
8
9
10
11
12
13
14
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
2384
C#异步定时器:精准定期执行...
2404
WPF应用中融入ASP.NET Core...
1802
在C# .NET 8中使用MediatR实...
1546
延迟等待的艺术:C#中Task.D...
1295
WPF中轻松生成动态图表:实...
1350
.NET Core 中集成Dapper高级...
1190
C#屏幕截图:轻松捕获活动窗...
1266
串口通信利器:RJCP.DLL.Ser...
1218
.NET 性能分析:.NET 8 中的...
1089
C# 中的并发性:使用 Blocki...
1042
轻松上传:C#中HTTP POST mu...
1266
C#中轻松实现二维码和条形码...
1040
C#串口通讯实战:基础功能及...
1092
精准数字处理:C#中四舍五入...
1280
解决WPF界面卡死等待问题:...
2148
ASP.NET 后端开发:全面的路...
866
WPF中轻松操控GIF动画:WpfA...
968
还在到处加异常日志记录?试...
940
深入了解SOAPCore:在.NET 6...
934
在 .NET8 中通过 RabbitMQ实...
808
.NET —ToList 和 ToArray ...
807
.net中OpenCVSharp+Zxing读...
908
打造真实感十足的速度表盘:...
904
实现WPF多语言支持:简单灵...
903
C#中Task.Run怎么用?能解决...
888
MediatR让进程内通信如此简...
1945
.NET 9中ToList 和 ToArray ...
711
Microsoft.Extensions.Loggi...
725
掌握ImageSharp:图像处理的...
810
解密C#中允许HttpClient使用...
699
掌握System.Text.Json中的多...
783
轻松实现.NET应用自动更新:...
774
.NET 中的 UUID 和 ULID:最...
650
FluentFTP实战:轻松操控FTP...
771
解密C# Socket通信:克服粘...
768
深入理解WPF中的Dispatcher...
763
C#文件编码检测:轻松解析文...
645
C# 中的弱事件 — 如何避免...
631
ASP .NET Core 8+ 中的全局...
623
WPF神器揭秘:一键截图,轻...
611
WPF魔法:轻松实现依赖注入...
1839
ASP.NET Core .NET 8 中间件...
595
使用OpenXML在.NET 6中导出E...
705
WPF开发新境界:MVVM设计模...
658
C# Socket通信:灵活传输DTO...
650
WPF大展示专业指南:轻松实...
754
深入FileSystemWatcher:C#...
753
.NET配置文件大揭秘:轻松读...
630
实用指南:C#中优雅更新GUI...
612