C#文章/教程

C#是微软公司发布的一种由C和C++衍生出来的面向对象的编程语言、运行于.NET Framework和.NET Core(完全开源,跨平台)之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。C#是微软公司研究员Anders Hejlsberg的最新成果。

聊一聊 C# 线程切换后上下文都去了哪里

一:背景 1. 讲故事 总会有一些朋友是不是问一个问题,在 Windows 中线程做了上下文切换,请问被切的线程他的寄存器上下文都去了哪里?能不能给我挖出来?这个问题其实比较底层,如果对操作系统没有个体系层面的理解以及做过源码分析,其实很难说明白,这篇我们就从.NET高级调试的角度试着分析一下吧。 »

huangxincheng windbg

新手友好、轻量级的C#/.NET万能工具库

前言 今天分享一个基于MIT License协议开源、免费、新手友好、轻量级的C#/.NET万能工具库、帮助类库(支持.NET和.NET Core,可以帮助开发者们减少常见重复功能方法查找,提高开发工作效率):Masuit.Tools。 项目官方介绍 全龄段友好的C#万能工具库,码数吐司库,包含一些 »

Can-daydayup

用C#也能做机器学习?

本文先是简单介绍了ML.NET与ML.NET Model Builder,其次基于ML.NET Model Builder构建了一个猫狗识别的机器学习模型实例,最后在.NET项目中集成了它。 前言✨ 说到机器学习,大家可能都不陌生,但是用C#来做机器学习,可能很多人还第一次听说。其实在C »

mingupupu

微软官方发布的C#开源、免费、实用的Windows工具箱

前言 今天分享一款由微软官方发布的C#开源、免费、实用的Windows工具箱(帮助用户调整和简化Windows系统的体验,从而提高工作效率):Microsoft PowerToys。 项目介绍 Microsoft PowerToys 是使用 C++ 和 C# 编程语言开发的。它利用了 Window »

Can-daydayup

C# 提取PDF中指定文本、图片的坐标

获取PDF文件中文字或图片的坐标可以实现精确定位,这对于快速提取指定区域的元素,以及在PDF中添加注释、标记或自动盖章等操作非常有用。本文将详解如何使用国产PDF库通过C# 提取PDF中指定文本或图片的坐标位置(X, Y轴)。 ✍ 用于操作PDF文件的第三方库为Spire.PDF for .NET。 »

关于C#反射概念,附带案例!

反射 C#中的反射是一种使程序在运行时能够动态地获取类型信息并调用其成员的技术。通过反射,程序可以在运行时进行类型的动态加载、创建对象、调用方法和属性,以及访问和修改字段等。反射可以使程序更加灵活,但也增加了一定的性能开销。 在C#中,反射主要是通过System.Reflection命名空间中的类来 »

关于C#接口的用法详细解答,附上案例说明!

接口 C#中的接口是一种定义了一组方法、属性和事件的类型。它只包含成员的声明,而不包含任何实现。接口可以被类通过实现的方式使用,从而使类能够具有接口定义的行为。 接口在C#中被定义为使用interface关键字,接口的成员默认是公共的。类通过使用implements关键字实现接口,并提供接口中定义的 »

chen233

C# 从代码入门 Mysql 数据库事务

目录 生成数据库数据 Mysql 数据库事务基础 数据库的并发一致性问题 数据库事务的隔离级别 BeginTransaction() 和 TransactionScope 的区别 BeginTransaction() 可以不手动撤销 TransactionScope 总结 DML 是否 »

whuanle

TIOBE 12月榜单: C# 即将成为2023 年度编程语言

TIOBE 公布了 2023 年 12 月的编程语言排行榜。 2022年C# 在挑战成为年度编程语言,但在最后一刻,C++出人意料地夺得了冠军。今年,我们确信 C# 将获胜成为2023年度编程语言。它在 1 年内上涨了 2.38%,而其最接近的竞争者 Fortran 和 F# 分别仅上涨了 +0.6 »

探秘C#中的秘密通道:五种引人注目的方法调用内部或私有方法

在 C# 中,可以使用不同的方法调用内部或私有方法。下面分别介绍通过反射、MethodInfo.CreateDelegate、表达式(树)、动态方法(call)、动态方法(calli)这五种方法。 1. 通过反射方法 使用反射可以访问和调用内部或私有方法。 using System; using S »

hanbing81868164

C#中await /async 的使用场景,优点,使用方法介绍

  async/await 是 C# 中异步编程的关键特性,它使得异步代码编写更为简单和直观。下面深入详细描述了 async/await 的使用场景、优点以及一些高级使用方法,并提供了相应的实例源代码。 使用场景: I/O 操作: 异步编程特别适用于涉及 I/O 操作(如文件读写、网络请求等) »

hanbing81868164

c# 高并发必备技巧(三)

前面两篇文章主要是介绍了如何解决高并发情况下资源争夺的问题。但是现实的应用场景中除了要解决资源争夺问题,高并发的情况还需要解决更多问题,比如快速处理业务数据等, 本篇文章简要罗列一下与之相关的更多技术细节。 1、异步编程:使用async和await关键字进行异步编程,这可以避免阻塞线程,提高程序的响 »

pzscit .NET

深度解析C#中LinkedList的存储结构

  本文承接前面的3篇有关C#的数据结构分析的文章,对于C#有关数据结构分析还有一篇就要暂时结束了,这个系列主要从Array、List、Dictionary、LinkedList、 SortedSet等5中不同类型进行介绍和分析。废话不多说,接下来我们来最后看一下这个系列的最后一种数据类型"链表"。 »

pengze0902

C#中的并行处理、并行查询的方法你用对了吗?

Parallel.ForEach Parallel.ForEach 是一个用于在集合上并行执行迭代操作的强大工具。它通过有效地利用多核处理器的能力来提高性能。Parallel.ForEach 不仅能够简化并行编程,而且它在执行简单循环时可以提供比传统迭代更好的性能。 下面是一个简单的示例,演示了如何 »

hanbing81868164

C#/.NET/.NET Core优秀项目和框架2023年11月简报

前言 公众号每月定期推广和分享的C#/.NET/.NET Core优秀项目和框架(公众号每周至少推荐两个优秀的项目和框架当然节假日除外),公众号推文有项目和框架的介绍、功能特点以及部分截图等(打不开或者打开GitHub很慢的同学可以优先查看公众号推文,文末一定会附带项目和框架源码地址)。注意:排名不 »

Can-daydayup

C# 面试常见递归算法

前言 今天我们主要总结一下C#面试中常见递归算法。 C#递归算法计算阶乘的方法 一个正整数的阶乘(factorial)是所有小于及等于该数的正整数的积,并且0的阶乘为1。自然数n的阶乘写作n!。1808年,基斯顿·卡曼引进这个表示法。 原理:亦即n!=1×2×3×...×(n-1)×n。阶乘亦可 »

Can-daydayup

深入解析C# List的源码

  前面的文章中解释了Array的初始化和元素插入,以及数组整体的存储结构(《深度分析C#中Array的存储结构》)。这里我们再来详细的了解另一种存储结构List<T>, List <T>是 ArrayList 泛型版本,是一个泛型集合类,用于表示动态大小的数组。List&l »

pengze0902

C# 泛型编译特性对性能的影响

C#作为一种强类型语言,具有丰富的泛型支持,允许开发者编写可以应对不同数据类型的通用代码。然而,在泛型编译时,针对结构和类作为泛型参数时,会对性能产生不同的影响。 C#作为一种强类型语言,具有丰富的泛型支持,允许开发者编写可以应对不同数据类型的通用代码。然而,在泛型编译时,针对结构和类作 »

tansm