当前标签: NET
[C#.NET 拾遗补漏]04:你必须知道的反射
阅读本文大概需要 3 分钟。 通常,反射用于动态获取对象的类型、属性和方法等信息。今天带你玩转反射,来汇总一下反射的各种常见操作,捡漏看看有没有你不知道的。 获取类型的成员 Type 类的 GetMembers 方法用来获取该类型的所有成员,包括方法和属性,可通过 BindingFlags 标志来筛选这些成员。 ...
2020-06-09 08:58
阅读(267)
.NET Web应用中为什么要使用async/await异步编程
前言 * 什么是async/await? await和async是.NET Framework4.5框架、C#5.0语法里面出现的技术,目的是用于简化异步编程模型。 * async和await的关系? async和await是成对出现的。 async出现在方法的声明里,用于批注一个异步方法。光有as...
2020-06-08 15:13
阅读(221)
[C#.NET 拾遗补漏]03:你可能不知道的几种对象初始化方式
阅读本文大概需要 1.2 分钟。 随着 C# 的升级,C# 在语法上对对象的初始化做了不少简化,来看看有没有你不知道的。 数组的初始化 在上一篇罗列数组的小知识的时候,其中也提到了数组的初始化,这时直接引用过来。 int[] arr = new int[3] {1, 2, 3}; // 正儿八经的初始化 int[...
2020-06-08 08:38
阅读(181)
在.NET Core中用最原生的方式读取Nacos的配置
背景 之前老黄写过一篇《ASP.NET Core结合Nacos来完成配置管理和服务发现》简单介绍了如何让.NET Core程序接入Nacos,之前的SDK里面更多的是对Nacos的Open API进行了封装以及对服务注册和发现的封装。 配置这一块当时并没有过多的处理,用起来有时感觉不会特别顺手,所以将它和.NE...
2020-04-26 08:17
阅读(102)
ASP.NET Core 3.x 中间件流程与路由体系
中间件分类 ASP.NET Core 中间件的配置方法可以分为以上三种,对应的Helper方法分别是:Run(), Use(), Map()。 * Run(),使用Run调用中间件的时候,会直接返回一个响应,所以后续的中间件将不会被执行了。 * Use(),它会对请求做一些工作或处理,例如添加一些...
2020-03-28 07:24
阅读(113)
C# lock 语法糖实现原理--《.NET Core 底层入门》之自旋锁,互斥锁,混合锁,读写锁
在多线程环境中,多个线程可能会同时访问同一个资源,为了避免访问发生冲突,可以根据访问的复杂程度采取不同的措施 原子操作适用于简单的单个操作,无锁算法适用于相对简单的一连串操作,而线程锁适用于复杂的一连串操作 原子操作 修改状态要么成功且状态改变,要么失败且状态不变,并且外部只能观察到修改前或者修改后的状态,修改...
2020-03-22 17:45
阅读(186)
ASP.NET Core身份认证服务框架IdentityServer4 介绍
IdentityServer4是ASP.NET Core 2的OpenID Connect和OAuth 2.0框架。它可以在您的应用程序中提供以下功能: 它使你的应用程序具有如下特点: 认证即服务 适用于所有应用程序(web, native, mobile, services)的集中登录逻辑和工作流程。Iden...
2020-03-12 15:20
阅读(158)
Asp.Net Core Filter 深入浅出的那些事-AOP
一、前言 在分享ASP.NET Core Filter 使用之前,先来谈谈AOP,什么是AOP 呢? AOP全称Aspect Oriented Programming 意为面向切面编程,也叫做面向方法编程,是通过预编译方式和运行期动态代理的方式实现不修改源代码的情况下给程序动态统一添加功能的技术。 AOP技术利...
2020-03-02 12:28
阅读(270)