首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
必须知道的 10 个 C# 代码异常以及如何修复它们
编写干净且易于维护的 C# 代码是一项需要时间来培养的技能。开发人员面临的一个常见障碍是处理 “代码异味”。这些迹象表明代码中可能存在问题。以下是 10 个必须了解的 C# 代码异味以及如何修复它们。1. 长方法**问题:**太长的方法很难理解和维护。他们经常同时做太多...
8-29 13:57
197
.NET Core 的 3 个性能提示
下面是 .net Core 的一些性能改进。这在 .net core 8 上进行了测试。在较新版本上,结果可能会有所不同。所有基准测试也在同一台计算机上运行。与往常一样,在尝试优化性能时,请尝试考虑可读性。优化程度越高的代码有时可能更难阅读。可读性性能1. SeriLog 日志消息在...
8-29 13:49
141
.NET Web API 中的统一 API 响应与结果模式
U.NET 项目中的 nified API 响应简化了应用程序之间的通信,强调了软件开发的一致性和清晰度。本文描述了实现统一 API 响应所涉及的优势和过程步骤。什么是统一 API 响应?统一 API 响应本质上是 API 端点生成的响应的标准化格式。无论请求的结果如何,响应都遵循统一的...
8-29 13:44
261
C#中的委托和事件
C# 语言中的委托和事件#委托和事件是 C# 中用于实现事件驱动编程模型的基本概念。以下是对每个选项的解释以及实际的真实示例。代表委托是一种类型,它表示对具有特定参数列表和返回类型的方法的引用。 委托用于将方法作为参数传递给其他方法。// Define a delegate pub...
8-29 13:40
127
C#中的工作单元和存储库模式
在现代 .NET 开发中,确保关注点分离、干净的代码和高效的数据处理至关重要。Unit of Work 和 Repository 模式被广泛用于简化数据访问,而依赖注入 (DI) 已成为提高性能和可扩展性的标准实践。在本文中,我将展示如何有效地实现这些模式。存储库模式Repository Patter...
8-29 13:35
197
.NET 配置体系结构
如今,.NET 应用程序开箱即用,具有一组强大的配置源。新搭建的 ASP .NET 应用程序从 JSON 文件 () 、环境变量和命令行参数中读取配置。尽管如此,部分正因为如此,维护干净的配置架构成为一项挑战。让我们来了解一个特别常见的架构难题,并尝试找到解决方案。appsett...
8-28 16:8
117
在 C# 中System.Text.Json的使用
如何使用命名空间在 C# 中序列化和反序列化 JSON。System.Text.Json注意:您可以使用您最喜欢的在线 C# 编译器(如 ShartLab.io)尝试本文中所示的示例。什么是 JSON?JSON 代表 JavaScript 对象表示法,它主要用于在两个可能位于同一平台上也可能不在同一平台上的系统...
8-28 15:45
213
.NET Core 中的 Null 对象设计模式
一种称为 Null Object Pattern 的行为设计模式提供了一个对象来表示接口的缺失对象。如果 null 对象会导致 null 引用异常,则这是提供替代行为的一种方法。在本文中,我们将深入探讨 C# Null Object 模式,逐步介绍更复杂的情况。Null 对象设计模式:它是什么?一种使使...
8-28 15:42
106
在 C# 中创建和使用适用于 ASP.NET Core 的自定义属性
C# 中的属性是一项强大的功能,允许开发人员将元数据添加到其代码中。此元数据可用于控制各种组件的行为,从序列化到验证,而不会因重复的逻辑而使代码库变得混乱。虽然 .NET 提供了丰富的内置属性,但有时你需要更符合你的特定需求的属性。这就是自定义属性发挥作用的...
8-28 15:39
141
深入了解 C# 类型转换技术
在这篇文章中,我们将探讨如何在 C# 中执行类型转换。类型转换对于将数据值从一种类型转换为另一种类型至关重要,使我们能够对数据执行适当的操作。了解如何以及何时使用类型转换可以防止错误并提高代码的效率。让我们开始吧!类型转换:在软件开发过程中,我们可能需要...
8-28 15:36
111
<<
<
…
19
20
21
22
23
24
25
26
27
28
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
2387
C#异步定时器:精准定期执行...
2405
WPF应用中融入ASP.NET Core...
1803
在C# .NET 8中使用MediatR实...
1547
延迟等待的艺术:C#中Task.D...
1296
WPF中轻松生成动态图表:实...
1351
.NET Core 中集成Dapper高级...
1190
C#屏幕截图:轻松捕获活动窗...
1266
串口通信利器:RJCP.DLL.Ser...
1219
.NET 性能分析:.NET 8 中的...
1091
C# 中的并发性:使用 Blocki...
1042
轻松上传:C#中HTTP POST mu...
1266
C#中轻松实现二维码和条形码...
1040
C#串口通讯实战:基础功能及...
1092
精准数字处理:C#中四舍五入...
1280
解决WPF界面卡死等待问题:...
2148
ASP.NET 后端开发:全面的路...
867
WPF中轻松操控GIF动画:WpfA...
968
还在到处加异常日志记录?试...
940
深入了解SOAPCore:在.NET 6...
934
.NET —ToList 和 ToArray ...
808
在 .NET8 中通过 RabbitMQ实...
808
.net中OpenCVSharp+Zxing读...
908
实现WPF多语言支持:简单灵...
906
打造真实感十足的速度表盘:...
904
C#中Task.Run怎么用?能解决...
888
MediatR让进程内通信如此简...
1946
.NET 9中ToList 和 ToArray ...
711
Microsoft.Extensions.Loggi...
725
掌握ImageSharp:图像处理的...
811
解密C#中允许HttpClient使用...
700
掌握System.Text.Json中的多...
783
轻松实现.NET应用自动更新:...
774
.NET 中的 UUID 和 ULID:最...
650
FluentFTP实战:轻松操控FTP...
771
解密C# Socket通信:克服粘...
769
深入理解WPF中的Dispatcher...
763
C#文件编码检测:轻松解析文...
645
C# 中的弱事件 — 如何避免...
631
ASP .NET Core 8+ 中的全局...
623
WPF神器揭秘:一键截图,轻...
612
WPF魔法:轻松实现依赖注入...
1839
ASP.NET Core .NET 8 中间件...
595
使用OpenXML在.NET 6中导出E...
706
WPF开发新境界:MVVM设计模...
660
C# Socket通信:灵活传输DTO...
652
WPF大展示专业指南:轻松实...
755
深入FileSystemWatcher:C#...
753
.NET配置文件大揭秘:轻松读...
630
实用指南:C#中优雅更新GUI...
613