首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
.NET 8 中的请求超时中间件
在本文中,我们将学习如何使用 Microsoft.AspNetCore.Http.Timeouts 命名空间在 .NET 8 中请求超时中间件工作。此命名空间提供了应用每个请求的超时的灵活性。当达到超时限制时,HttpContext.RequestAborted 中 CancellationToken 的 IsCancellationRequested 属性设置...
6-5 17:47
27
C# 中的弱事件 — 如何避免令人讨厌的内存泄漏
在 C# 中,事件和事件处理程序历来是对象之间通信的核心。在用户界面基于 WinForms 和 WPF 构建的应用程序中尤其如此。但是,误用事件会出现一个常见问题——内存泄漏!当事件订阅者未正确取消订阅时,就会发生这些泄漏,从而导致保留引用,从而无法释放内存。在 C# 中...
6-5 17:43
141
在 .NET8 中通过 RabbitMQ实现消息队列功能
RabbitMQ 是一个功能强大且广泛使用的开源消息代理,可促进分布式系统之间的通信。它实现了高级消息队列协议 (AMQP),使应用程序能够通过队列发送和接收消息,确保可靠和高效的数据传输。RabbitMQ 支持各种消息传递模式,例如发布/订阅、请求/回复和点对点,使其适用...
6-5 17:10
82
.NET 中的内存管理和垃圾回收
内存管理和垃圾回收是 .NET 开发的基本方面,对于构建高效且可伸缩的软件应用程序非常重要。在这篇文章中,我们将讨论堆栈和堆内存,探索内存分配机制,并了解 .NET 中的垃圾回收。了解堆栈和堆内存堆栈内存堆栈是用于执行程序代码和存储方法调用帧、局部变量和函数参数...
6-5 17:36
34
.NET core中的筛选器
筛选器是每个 .NET API 的组成部分。在这篇文章中,我旨在深入研究 .NET Core 中可访问的各种类型的筛选器。向 ASP.NET API 发起请求时,您的请求在到达目标控制器之前会经过一系列中间件和过滤器。ASP.NET core MVC 和最小 API近年来,从 ASP.NET MVC 到最小 API 的过...
6-5 16:3
43
深入了解 .NET 8 应用程序的 FluentValidation验证功能
本文将深入探讨如何使用 FluentValidation 在 .NET 应用程序中实现验证。传统上,.NET 应用程序过去常常使用数据批注进行验证,但这种方法曾经存在一些限制,例如模型或 dto 类看起来臃肿、不可扩展、无法控制消息和行为以及测试不灵活。这就是像 FluentValidation 这样...
6-5 16:15
68
ASP.NET Core 中的 URL 重写简介
URL 重写是 Web 开发中用于修改或操作 Web 请求 URL 的强大技术。它允许开发人员创建更用户友好和搜索引擎优化的 URL。在本文中,我们将探讨 ASP.NET Core 上下文中的 URL 重写,这是一个跨平台的高性能框架,用于构建现代、基于云的和连接互联网的应用程序。为什么要重...
6-5 16:1
54
C#/.Net 中的多线程介绍和最佳实践
I/ 引言计算机中的线程 CPU调度程序和时间切片进程和线程并发和并行性异步与多线程在 C 中使用多线程的好处#II 线程 C 语言#线程生命周期创建、启动和暂停线程加入中止中断线程取消:停止线程的更好方法III/ 线程问题死锁和争用条件使用 Join 和 LocksAutoResetEvent线...
6-5 10:32
53
.NET中用于重复数据删除的Redis
Redis 虽然经常被用作缓存存储,但它是一个通用的数据结构服务器,可以高效地处理重复数据删除等任务。在本文中,我们将探讨如何利用 Redis 进行重复数据删除,并通过 C# 示例来说明实际实现方法。什么是重复数据删除?dedupe重复数据删除通常称为 dedupe,是消除重复数...
6-5 10:5
49
C#语言中的Async/await最佳实践
自从 C# 5 中引入 async/await 以来,开发人员之间一直对 async/await 关键字的最佳实践以及幕后实际发生的事情感到困惑。让我们先从基础开始。在 Windows 窗体的早期,UI 延迟与 I/O 操作所花费的时间成正比。这意味着,如果您尝试将数据保存到数据库中,并且数据库调...
6-1 9:16
40
<<
<
…
16
17
18
19
20
21
22
23
24
25
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
1037
C#异步定时器:精准定期执行...
1103
WPF应用中融入ASP.NET Core...
700
解决WPF界面卡死等待问题:...
1757
WPF中轻松生成动态图表:实...
590
C#屏幕截图:轻松捕获活动窗...
572
串口通信利器:RJCP.DLL.Ser...
560
C#串口通讯实战:基础功能及...
537
延迟等待的艺术:C#中Task.D...
390
C#中轻松实现二维码和条形码...
363
FluentFTP实战:轻松操控FTP...
399
.NET —ToList 和 ToArray ...
261
掌握ImageSharp:图像处理的...
378
解密C# Socket通信:克服粘...
371
WPF开发新境界:MVVM设计模...
375
WPF中轻松操控GIF动画:WpfA...
368
C# 中的并发性:使用 Blocki...
229
实现WPF多语言支持:简单灵...
328
还在到处加异常日志记录?试...
324
C#中Task.Run怎么用?能解决...
324
轻松实现.NET应用自动更新:...
316
在C# .NET 8中使用MediatR实...
192
打造真实感十足的速度表盘:...
312
.net中OpenCVSharp+Zxing读...
308
.net中连接数据库太麻烦?试...
308
ASP.NET 后端开发:全面的路...
185
.NET 性能分析:.NET 8 中的...
184
C#文件编码检测:轻松解析文...
195
.NET配置文件大揭秘:轻松读...
301
C# Socket通信:灵活传输DTO...
298
.NET 9中ToList 和 ToArray ...
173
深入理解WPF中的Dispatcher...
281
Microsoft.Extensions.Loggi...
187
优化代码性能:C#中轻松测量...
276
WPF大展示专业指南:轻松实...
386
C#语言中从Switch语句转换到...
151
WPF魔法:轻松实现依赖注入...
1378
C# Switch 语句进阶:模式匹...
268
.NET Core 中集成Dapper高级...
143
MediatR让进程内通信如此简...
1364
.net下优秀的日志框架Serilo...
1386
C# 中的弱事件 — 如何避免...
141
.net中通过定时任务框架Quar...
257
C# .NET 8 — 创建具有分布...
134
.net 下优秀的DI框架推荐,...
248
探索深度克隆的极致:C#开源...
245
掌握System.Text.Json中的多...
245
C#实例方法和静态方法有区别...
254
.net中各种加解密用这一个库...
242
改一个对象类型,for循环耗...
242