首页
C&C++
C#语言
Java
Python
人工智能
Web前端
数据库
面试笔记
其它
软件推荐
搜索
MVVM中实现 INotifyPropertyChanged 的 4 种方法
在 .NET 桌面和移动中,接口通常由数据对象(即_模型_层)实现,以便在发生更改和 UI 需要更新时通知_视图_层。对于诸如自动属性之类的琐碎情况,实现此接口非常简单,但对于计算属性或依赖于其他对象的属性,它变得更加复杂。在本文中,我们将探讨几种实现策略和工具,...
10-27 18:8
164
.NET 8 中的控制器与最小 API:您应该使用哪一个?
在 .NET 8 中,在控制器和最小 API 之间进行选择可能是一项挑战,尤其是随着 .NET Core 向更灵活的 API 开发体验发展。随着最小 API 的引入,开发人员可以更简单、更快速地构建 API,而无需使用完整的 MVC 框架。但是,Controller 仍然是更复杂项目的可靠选择。在本文中...
10-27 18:3
108
在 .NET 8 中使用 AppUser 进行 JWT 令牌身份验证
JWT 身份验证是保护 API 的标准方法之一。这允许无状态身份验证,因为签名令牌是在客户端和服务器之间传递的。在 .NET 8 中,使用 JWT 令牌的方式得到了改进。将它们与 AppUser 类集成将为您的应用程序提供无缝身份验证。本文介绍了在 .NET 8 Web 应用程序中通过 AppUse...
10-27 18:0
107
在 Entity Framework Core 中优化查询:实现.NET 中的高性能数据访问
在现代 Web 应用程序中,数据访问在性能方面起着至关重要的作用。Entity Framework Core (EF Core) 是适用于 .NET 的常用 ORM(对象关系映射器),可简化数据库交互。但是,如果不有效使用,可能会导致性能瓶颈。在本文中,我们将探讨在 EF Core 中优化查询的关键策略...
10-27 17:53
100
在 ASP.NET Core 中掌握依赖关系注入
依赖项注入 (DI) 是 ASP.NET Core 中的一项重要功能,使您能够以弯曲的方式管理依赖于每个不同的实用程序的部分。虽然许多开发人员了解基础知识,但卓越的 DI 策略可以广泛增强大型或复杂计划的能力。在本文中,我们将介绍一些高级技术。第 1 部分:深入了解服务生命...
10-26 18:2
122
C# 中 'span<T>' 的强大功能:使用实际示例优化代码性能
最近,我一直在研究代码审查和优化重构。我发现,在许多代码场景中,使用是一种改变游戏规则的方法,可以显著提高代码性能。SpanT在这里,我将分享两个实际示例,展示如何利用它来优化代码并实现性能改进。SpanT什么?SpanTSpanT是 C# 7.2 中引入的一种语法,它提供了一...
10-26 17:10
133
ASP.NET Core 中的身份验证和授权(针对 .NET 8 更新)
身份验证和授权对于保护现代 Web 应用程序至关重要。它们确保用户是他们声称的身份 (身份验证) 并且他们具有正确的访问级别 (授权)。ASP.NET Core 提供内置工具来简化此过程,同时提供实施复杂安全措施的灵活性。身份验证和授权之间的区别身份验证验证用户的身份。...
10-26 17:6
212
从层到功能:探索 .NET 中的垂直切片体系结构
我们构建软件的方式不断发展。虽然 Clean Architecture 一直是 .NET 开发人员的最爱,但 Vertical Slice Architecture 以其以功能为中心的方法而受到关注。那么,让我们快速深入了解 Vertical Slice,将其与 Clean Architecture 进行比较,看看它是否适合您的下一个项目...
10-26 16:50
154
在 ASP.NET Core 中构建自定义后台任务队列,无需 hangfire
在 ASP.NET Core 中构建可扩展的 Web 应用程序时,通常需要执行耗时的任务,例如发送电子邮件、数据处理或调用外部 API,而不会阻止主要的请求-响应流。在后台运行这些操作可以显著提高应用程序性能。在这里,我们将学习如何在不使用 Hangfire 等库的情况下创建自定义后...
10-25 18:39
200
ASP.NET Core 中的内置中间件
中间件用于在 HTTP 请求之前和之后添加额外的逻辑。我们可以创建自定义中间件,并且有大量可用的内置中间件可供我们使用:简单地添加中间件代码(如本文所示)并不能保证其预期目的将完全实现。可能需要其他服务、配置和逻辑来满足特定的应用程序需求。本文旨在解释文件...
10-25 18:35
125
<<
<
…
3
4
5
6
7
8
9
10
11
12
…
>
>>
阅读排行
深入WPF数据绑定:Converter...
2011
C#异步定时器:精准定期执行...
2007
WPF应用中融入ASP.NET Core...
1478
在C# .NET 8中使用MediatR实...
1157
延迟等待的艺术:C#中Task.D...
1077
WPF中轻松生成动态图表:实...
1150
C#屏幕截图:轻松捕获活动窗...
1090
.NET Core 中集成Dapper高级...
926
C#中轻松实现二维码和条形码...
882
串口通信利器:RJCP.DLL.Ser...
962
C#串口通讯实战:基础功能及...
923
C# 中的并发性:使用 Blocki...
798
解决WPF界面卡死等待问题:...
2028
.NET 性能分析:.NET 8 中的...
785
轻松上传:C#中HTTP POST mu...
1018
还在到处加异常日志记录?试...
808
ASP.NET 后端开发:全面的路...
673
WPF中轻松操控GIF动画:WpfA...
790
.NET —ToList 和 ToArray ...
638
.net中OpenCVSharp+Zxing读...
755
打造真实感十足的速度表盘:...
753
实现WPF多语言支持:简单灵...
749
C#中Task.Run怎么用?能解决...
732
精准数字处理:C#中四舍五入...
939
.NET 9中ToList 和 ToArray ...
576
掌握ImageSharp:图像处理的...
683
在 .NET8 中通过 RabbitMQ实...
559
轻松实现.NET应用自动更新:...
663
FluentFTP实战:轻松操控FTP...
659
Microsoft.Extensions.Loggi...
563
解密C# Socket通信:克服粘...
651
解密C#中允许HttpClient使用...
523
C# 中的弱事件 — 如何避免...
505
深入了解SOAPCore:在.NET 6...
626
.NET 中的 UUID 和 ULID:最...
496
MediatR让进程内通信如此简...
1709
WPF魔法:轻松实现依赖注入...
1716
WPF神器揭秘:一键截图,轻...
478
C#文件编码检测:轻松解析文...
485
深入理解WPF中的Dispatcher...
590
掌握System.Text.Json中的多...
582
WPF开发新境界:MVVM设计模...
576
使用OpenXML在.NET 6中导出E...
562
C# Socket通信:灵活传输DTO...
553
WPF大展示专业指南:轻松实...
637
ASP .NET Core 8+ 中的全局...
396
ASP.NET Core .NET 8 中间件...
392
.NET配置文件大揭秘:轻松读...
510
实用指南:C#中优雅更新GUI...
498
在 C# 中进行科学计算,以任...
368