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