随笔分类 - .NET
摘要:Task.Delay 和 Thread.Sleep 都可以用来在代码中引入延迟,但它们之间有几个关键的区别: 异步 vs. 同步: Thread.Sleep 是一个同步方法,它会阻塞当前线程,直到指定的时间过去。这意味着在 Thread.Sleep 执行期间,当前线程不能做任何其他事情,这可能会导致
阅读全文
摘要:浅谈 值类型和引用类型 在堆和栈中的存储 简介 本文将简单介绍什么是“栈”(stack)和“堆”(heap),并讨论值类型和引用类型在这两种内存结构中的存储方式。 栈和堆的概念 栈:后入先出(LIFO)的数据结构,由CLR管理,每个线程有自己的栈。 堆:存放较为零散,由Garbage Collect
阅读全文
摘要:Visual Studio常用快捷键 前言 对于开发者而言,熟悉快捷键的使用,能够起到事半功倍的作用,提高工作效率。以下是我整理的一份Visual Studio常用快捷键清单,希望能够帮助到你。 常用快捷方式 快捷键 功能 Ctrl + K + C 注释选定内容 Ctrl + K + U 取消注释选
阅读全文
摘要:浅复制和深复制 浅复制(Shallow Copy)和深复制(Deep Copy)是在编程中用于复制对象的两种方式。浅复制复制的是对象的引用(指针),而深复制则复制对象的实际值。 在.NET中,浅复制可以通过MemberwiseClone方法实现,而深复制则需要自己定义复制逻辑,手动复制对象的字段。
阅读全文
摘要:开源项目分享:ChatGPT 控制台聊天应用 分享一个我最近完成的一个小应用,一个ChatGPT 的控制台聊天应用,大家都在搞AI,我也来玩一玩,顺便分享到社区,有兴趣的小伙伴可以去我的github主页下载体验。 项目简介 ChatGPT 控制台聊天应用 基于.NET8实现,一键拥有你的私人 Cha
阅读全文
摘要:.NET中特性+反射 实现数据校验 在.NET中,我们可以使用特性+反射来实现数据校验。特性是一种用于为程序中的代码添加元数据的机制。元数据是与程序中的代码相关联的数据,但不直接成为代码的一部分。通过特性,我们可以为类、方法、属性等添加额外的信息,这些信息可以在运行时通过反射获取和使用。 对反射不太
阅读全文
摘要:.NET 中的表达式树(Expression Trees) 表达式树是什么? 表达式树(Expression Trees)是.NET框架中的一个强大功能,它将代码表示为一个由表达式节点组成的树形结构。每个节点代表代码中的一个操作,例如方法调用、算术运算、逻辑运算等。表达式树允许开发者在运行时分析、修
阅读全文
摘要:.NET中的反射 反射是什么? 反射(Reflection)是.NET框架提供的一种强大的机制,它允许程序在运行时查询和操作对象的类型信息。通过反射,我们能够获取类型的属性、方法、构造函数等信息,甚至可以动态地创建类型实例和调用方法。反射是.NET框架中实现诸如序列化、反序列化、动态代理、依赖注入等
阅读全文