首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
什么是 .NET 中的析构函数、处置和终结?
内存管理被认为是困难的,因为它非常抽象。但是,有了正确的指导和正确的方法,这只是您将牢记在心的另一个概念!今天的问题是:.NET 中的 destructor dispose 和 finalize 和有什么不一样?像往常一样,我将提供 C# 语言的 .NET 面试问题的代码示例。话虽如此,将您的...
6-8 9:12
485
在 ASP.NET Core 8 中配置自定义异常处理程序
若要增强 ASP.NET Core 应用程序的复原能力和用户体验,实现自定义异常处理至关重要。本文将指导你配置自定义的“IExceptionHandler”实现,从而实现更结构化、信息更丰富的错误处理方法。先决条件若要将“IExceptionHandler”实现添加到 ASP.NET Core 请求管道,需要:...
6-8 9:0
793
C#中的异步、多线程和并行编程
本文将介绍 .NET 中异步编程的基础知识,包括 和 关键字的使用、任务的作用以及它们如何与线程池交互。我们将探讨演示异步方法、处理异步代码中的异常以及通过并行编程提高性能的实际示例。此外,我们还将讨论编写高效异步代码的最佳实践以及要避免的常见陷阱。在本文结...
6-8 8:54
574
.NET 8 中的请求超时中间件
在本文中,我们将学习如何使用 Microsoft.AspNetCore.Http.Timeouts 命名空间在 .NET 8 中请求超时中间件工作。此命名空间提供了应用每个请求的超时的灵活性。当达到超时限制时,HttpContext.RequestAborted 中 CancellationToken 的 IsCancellationRequested 属性设置...
6-5 17:52
634
C# 中的弱事件 — 如何避免令人讨厌的内存泄漏
在 C# 中,事件和事件处理程序历来是对象之间通信的核心。在用户界面基于 WinForms 和 WPF 构建的应用程序中尤其如此。但是,误用事件会出现一个常见问题——内存泄漏!当事件订阅者未正确取消订阅时,就会发生这些泄漏,从而导致保留引用,从而无法释放内存。在 C# 中...
6-5 17:33
3278
在 .NET8 中通过 RabbitMQ实现消息队列功能
RabbitMQ 是一个功能强大且广泛使用的开源消息代理,可促进分布式系统之间的通信。它实现了高级消息队列协议 (AMQP),使应用程序能够通过队列发送和接收消息,确保可靠和高效的数据传输。RabbitMQ 支持各种消息传递模式,例如发布/订阅、请求/回复和点对点,使其适用...
6-5 17:19
3859
.NET 中的内存管理和垃圾回收
内存管理和垃圾回收是 .NET 开发的基本方面,对于构建高效且可伸缩的软件应用程序非常重要。在这篇文章中,我们将讨论堆栈和堆内存,探索内存分配机制,并了解 .NET 中的垃圾回收。了解堆栈和堆内存堆栈内存堆栈是用于执行程序代码和存储方法调用帧、局部变量和函数参数...
6-5 17:14
560
.NET core中的筛选器
筛选器是每个 .NET API 的组成部分。在这篇文章中,我旨在深入研究 .NET Core 中可访问的各种类型的筛选器。向 ASP.NET API 发起请求时,您的请求在到达目标控制器之前会经过一系列中间件和过滤器。ASP.NET core MVC 和最小 API近年来,从 ASP.NET MVC 到最小 API 的过...
6-5 16:48
636
深入了解 .NET 8 应用程序的 FluentValidation验证功能
本文将深入探讨如何使用 FluentValidation 在 .NET 应用程序中实现验证。传统上,.NET 应用程序过去常常使用数据批注进行验证,但这种方法曾经存在一些限制,例如模型或 dto 类看起来臃肿、不可扩展、无法控制消息和行为以及测试不灵活。这就是像 FluentValidation 这样...
6-5 16:24
1264
ASP.NET Core 中的 URL 重写简介
URL 重写是 Web 开发中用于修改或操作 Web 请求 URL 的强大技术。它允许开发人员创建更用户友好和搜索引擎优化的 URL。在本文中,我们将探讨 ASP.NET Core 上下文中的 URL 重写,这是一个跨平台的高性能框架,用于构建现代、基于云的和连接互联网的应用程序。为什么要重...
6-5 16:18
528
<<
<
…
61
62
63
64
65
66
67
68
69
70
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
5827
C#异步定时器:精准定期执行...
5947
WPF应用中融入ASP.NET Core...
5054
在C# .NET 8中使用MediatR实...
4930
精准数字处理:C#中四舍五入...
4837
.NET Core 中集成Dapper高级...
4422
延迟等待的艺术:C#中Task.D...
4372
串口通信利器:RJCP.DLL.Ser...
4428
.NET 性能分析:.NET 8 中的...
4249
轻松上传:C#中HTTP POST mu...
4466
WPF中轻松生成动态图表:实...
4215
C# 中的并发性:使用 Blocki...
4087
C#中轻松实现二维码和条形码...
4019
C#屏幕截图:轻松捕获活动窗...
4100
深入了解SOAPCore:在.NET 6...
4079
MediatR让进程内通信如此简...
5093
在 .NET8 中通过 RabbitMQ实...
3859
Microsoft.Extensions.Loggi...
3786
ASP.NET 后端开发:全面的路...
3728
C#串口通讯实战:基础功能及...
3838
WPF中轻松操控GIF动画:WpfA...
3810
ASP .NET Core 8+ 中的全局...
3658
.net中OpenCVSharp+Zxing读...
3768
解决WPF界面卡死等待问题:...
4827
C#文件编码检测:轻松解析文...
3582
解密C#中允许HttpClient使用...
3581
实现WPF多语言支持:简单灵...
3680
.NET —ToList 和 ToArray ...
3557
使用OpenXML在.NET 6中导出E...
3664
C#中Task.Run怎么用?能解决...
3656
.NET 9中ToList 和 ToArray ...
3529
WPF神器揭秘:一键截图,轻...
3508
在 ASP.NET Core Web API 中...
3505
还在到处加异常日志记录?试...
3604
掌握System.Text.Json中的多...
3593
.NET 中的 UUID 和 ULID:最...
3466
打造真实感十足的速度表盘:...
3568
掌握ImageSharp:图像处理的...
3567
轻松实现.NET应用自动更新:...
3561
深入理解WPF中的Dispatcher...
3533
ASP.NET Core .NET 8 中间件...
3372
C# 中的弱事件 — 如何避免...
3278
C# .NET 8中的自动映射器Aut...
3225
ZLogger v2 架构:利用 .NET...
3176
FluentFTP实战:轻松操控FTP...
3222
WPF魔法:轻松实现依赖注入...
4307
解密C# Socket通信:克服粘...
3194
WPF开发新境界:MVVM设计模...
3190
WPF大展示专业指南:轻松实...
3235
C# Socket通信:灵活传输DTO...
3013