首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
C# Linq:讨厌又喜欢它
当我们有一个大型 C# 项目时,我们很快就会开始处理大量数据。这些数据可以来自各种来源:它可以由开发人员手写,从数据库中提取,从在线 URL 检索......由于所有这些源可能具有不同的约定,因此您最终可能会得到一些非常疏远的数据格式。现在,假设你想通读这个你在网...
9-1 20:10
8
必须知道的 10 个 C# 代码异常以及如何修复它们
编写干净且易于维护的 C# 代码是一项需要时间来培养的技能。开发人员面临的一个常见障碍是处理 “代码异味”。这些迹象表明代码中可能存在问题。以下是 10 个必须了解的 C# 代码异味以及如何修复它们。1. 长方法**问题:**太长的方法很难理解和维护。他们经常同时做太多...
8-29 13:17
6
.NET Core 的 3 个性能提示
下面是 .net Core 的一些性能改进。这在 .net core 8 上进行了测试。在较新版本上,结果可能会有所不同。所有基准测试也在同一台计算机上运行。与往常一样,在尝试优化性能时,请尝试考虑可读性。优化程度越高的代码有时可能更难阅读。可读性性能1. SeriLog 日志消息在...
8-29 13:57
6
.NET Web API 中的统一 API 响应与结果模式
U.NET 项目中的 nified API 响应简化了应用程序之间的通信,强调了软件开发的一致性和清晰度。本文描述了实现统一 API 响应所涉及的优势和过程步骤。什么是统一 API 响应?统一 API 响应本质上是 API 端点生成的响应的标准化格式。无论请求的结果如何,响应都遵循统一的...
8-29 13:59
11
C#中的委托和事件
C# 语言中的委托和事件#委托和事件是 C# 中用于实现事件驱动编程模型的基本概念。以下是对每个选项的解释以及实际的真实示例。代表委托是一种类型,它表示对具有特定参数列表和返回类型的方法的引用。 委托用于将方法作为参数传递给其他方法。// Define a delegate pub...
8-29 13:24
10
C#中的工作单元和存储库模式
在现代 .NET 开发中,确保关注点分离、干净的代码和高效的数据处理至关重要。Unit of Work 和 Repository 模式被广泛用于简化数据访问,而依赖注入 (DI) 已成为提高性能和可扩展性的标准实践。在本文中,我将展示如何有效地实现这些模式。存储库模式Repository Patter...
8-29 13:43
8
.NET 配置体系结构
如今,.NET 应用程序开箱即用,具有一组强大的配置源。新搭建的 ASP .NET 应用程序从 JSON 文件 () 、环境变量和命令行参数中读取配置。尽管如此,部分正因为如此,维护干净的配置架构成为一项挑战。让我们来了解一个特别常见的架构难题,并尝试找到解决方案。appsett...
8-28 16:37
7
在 C# 中System.Text.Json的使用
如何使用命名空间在 C# 中序列化和反序列化 JSON。System.Text.Json注意:您可以使用您最喜欢的在线 C# 编译器(如 ShartLab.io)尝试本文中所示的示例。什么是 JSON?JSON 代表 JavaScript 对象表示法,它主要用于在两个可能位于同一平台上也可能不在同一平台上的系统...
8-28 15:31
7
.NET Core 中的 Null 对象设计模式
一种称为 Null Object Pattern 的行为设计模式提供了一个对象来表示接口的缺失对象。如果 null 对象会导致 null 引用异常,则这是提供替代行为的一种方法。在本文中,我们将深入探讨 C# Null Object 模式,逐步介绍更复杂的情况。Null 对象设计模式:它是什么?一种使使...
8-28 15:7
14
在 C# 中创建和使用适用于 ASP.NET Core 的自定义属性
C# 中的属性是一项强大的功能,允许开发人员将元数据添加到其代码中。此元数据可用于控制各种组件的行为,从序列化到验证,而不会因重复的逻辑而使代码库变得混乱。虽然 .NET 提供了丰富的内置属性,但有时你需要更符合你的特定需求的属性。这就是自定义属性发挥作用的...
8-28 15:56
12
<
1
2
3
4
5
6
7
8
9
10
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
1034
C#异步定时器:精准定期执行...
1098
WPF应用中融入ASP.NET Core...
700
解决WPF界面卡死等待问题:...
1756
WPF中轻松生成动态图表:实...
589
C#屏幕截图:轻松捕获活动窗...
570
串口通信利器:RJCP.DLL.Ser...
560
C#串口通讯实战:基础功能及...
518
延迟等待的艺术:C#中Task.D...
389
C#中轻松实现二维码和条形码...
360
FluentFTP实战:轻松操控FTP...
397
.NET —ToList 和 ToArray ...
261
掌握ImageSharp:图像处理的...
378
解密C# Socket通信:克服粘...
370
WPF开发新境界:MVVM设计模...
372
WPF中轻松操控GIF动画:WpfA...
367
C# 中的并发性:使用 Blocki...
229
实现WPF多语言支持:简单灵...
326
还在到处加异常日志记录?试...
322
C#中Task.Run怎么用?能解决...
316
轻松实现.NET应用自动更新:...
316
打造真实感十足的速度表盘:...
312
在C# .NET 8中使用MediatR实...
189
.net中连接数据库太麻烦?试...
308
.net中OpenCVSharp+Zxing读...
307
.NET 性能分析:.NET 8 中的...
184
C#文件编码检测:轻松解析文...
195
.NET配置文件大揭秘:轻松读...
301
ASP.NET 后端开发:全面的路...
178
C# Socket通信:灵活传输DTO...
294
.NET 9中ToList 和 ToArray ...
169
深入理解WPF中的Dispatcher...
276
Microsoft.Extensions.Loggi...
186
WPF大展示专业指南:轻松实...
386
优化代码性能:C#中轻松测量...
274
C#语言中从Switch语句转换到...
151
WPF魔法:轻松实现依赖注入...
1377
.NET Core 中集成Dapper高级...
143
C# Switch 语句进阶:模式匹...
264
.net下优秀的日志框架Serilo...
1385
MediatR让进程内通信如此简...
1361
C# 中的弱事件 — 如何避免...
138
.net中通过定时任务框架Quar...
257
C# .NET 8 — 创建具有分布...
134
.net 下优秀的DI框架推荐,...
248
探索深度克隆的极致:C#开源...
245
C#实例方法和静态方法有区别...
254
改一个对象类型,for循环耗...
242
.net中各种加解密用这一个库...
241
掌握System.Text.Json中的多...
240