一:背景 1. 讲故事 最近在分析一个崩溃dump时,发现祸首和AssemblyLoadContext有关,说实话这东西我也比较陌生,后来查了下大模型,它主要奔着替代 .NetFrameWork 时代的 AppDomain 的,都是用来做晚期加卸载,实现对宿主程序的可插拔,AppDomain.Cre ...
在本教程中,我们将探讨如何开发一个以编程方式将 PowerPoint 转换为 XML 的工具。Aspose.Slides for .NET允许您使用 C# 中的几个类方法将 PPTX 转换为 XML。 ...
PocoEmit使用比较简单对于大部分转化是不需要手动配置 可以替代AutoMapper的大部分工作,实现精简代码,提高性能 一、获取Mapper实例 1. 获取Mapper默认实例 Default是一个静态延迟初始化的默认实例 IMapper mapper = PocoEmit.Mapper.De ...
在实际项目开发中,越是复杂的项目,越是需要很多人协同完成,每一个人根据职责分工不同,负责不同的模块。在这个过程中,由于每一个人的工作经历不同,在不同的职场环境中,会形成不同的编码习惯,比如有人喜欢驼峰命名方式,有人喜欢帕斯卡命名方式,还有人喜欢用下划线分隔单词,更有甚者,有的人喜欢随意命名,那在整个... ...
作为一名 .NET 开发人员,如果您希望自动化 PPTX 到 Markdown的转换,Aspose.Slides for .NET是不错的选择。这款 SDK 提供了一系列功能,支持您使用 C# 以编程方式将 PPTX 转换为 Markdown。它是一款开发者友好的 SDK,可以为您的商业应用提升竞争... ...
还在为复杂的 Office COM 组件调用而头疼吗?MudTools.OfficeInterop 就是你想要的!这是一套针对 Microsoft Office 应用程序(包括 Excel、Word、PowerPoint 和 VBE)的 .NET 封装库。我们通过提供简洁、统一的 API 接口,大大 ...
一:背景 1. 讲故事 前段时间微信上有位非调试训练营学员找到我,说他们的医疗软件有点问题,有时候卡了一会就好了,有时候卡了很久,让我帮忙看下怎么回事,我让这位朋友在卡的时候抓一个dump给我,我分析看看。 二:卡死分析 1. 为什么会卡死 对于窗体程序的卡死,主要就是看主线程此时正在做什么,使用 ...
本文告诉大家如何在通过更改注册表的设置,从而更改平板电脑设置 Tablet PC Settings 的左右手使用习惯 Handedness 的惯用左手和惯用右手选项 ...
现在的情况是: Windows 宿主机 IP:192.168.1.101 VMnet8 虚拟网卡 IP:192.168.1.111 CentOS7 上安装了 GitLab,external_url 配置成 http://192.168.1.111:8000 你希望在“本地电脑”(应该是同一局域网的另 ...
在数字文档的日常使用中,PDF 文件的体积大小直接影响存储空间、传输速度和打开体验。尤其是在包含大量图片、图表或字体资源的文档中,文件往往会变得非常庞大。TX Text Control 为开发者提供了多种可配置的工具与策略,帮助在不同场景下优化 PDF 文件大小,同时保持可读性与清晰度。 ...
如果您正在开发一个 .NET 项目,并希望实现自动化,使 SVG 到 EMF 的转换变得轻松便捷。Aspose.Slides for .NET是一个功能强大的 SDK,可让您以编程方式构建 SVG 到 EMF 的转换器。 ...
AutoMapper是让人又爱又恨的项目 爱它是因为它解决了一些问题,很多项目都有用,下载量很大,受众很广。 恨它是因为它诸多反人类的设计。 为此本人开源项目PocoEmit对标AutoMapper。 1. AutoMapper反人类设计 1.1 AutoMapper注册代码 services.Ad ...
一:背景 1. 讲故事 今年年初有位朋友在微信上找到我,说他们的系统在客户这边崩掉了,在代码中也加了全局异常处理但还是崩,不知道咋回事,让朋友在客户那边拿程序dump,拿到dump之后开始分析。 二:崩溃分析 1. 为什么会崩溃 既然是崩溃,那就用 !analyze -v 命令观察下windbg给我 ...
通过 GET 的实践案例可以看到,DHTMLX Scheduler.NET 不仅是一个日历组件,更是物流运输与排程管理中的核心工具。它帮助企业实现了数千个闸口的运输调度可视化与智能化,大幅提升了运营效率。 ...
在上文构建源生成器的过程中,我们使用字符串直接插入代码。这样做固然方便快捷,但字符串需要手动格式化,且无法检测拼写错误,这对需要生成复杂结构的源生成器项目很不友好。 本文将介绍生成代码的另一种方式:使用Roslyn API构建语法树。 什么是语法树 (Syntax Tree)? 语法树是编译器用于理 ...
C#9 引入了一个强大的机制:源生成器(Source Generator)。通过创建源生成器,我们可以简化大量重复编写的代码,或是减少反射来获得更强的性能以及AOT支持 本文将介绍如何从零开始创建一个最简单的源生成器 创建生成器项目 创建一个SourceGeneratorDemo.Generator ...
在 C# 开发中,处理 PDF 的字节数组是一种常见需求。本文将通过 Spire.PDF for .NET 演示具体实现步骤。你将学习如何将字节数组转换为 PDF,如何将 PDF 转换为字节数组,以及如何直接在内存中使用 C# 代码编辑 PDF。 ...
一:背景 1. 讲故事 前段时间微信里有一位非训练营学员找到我,说他们的系统在某些时段会cpu爆高,并伴有网络带宽的激增,不知道是什么情况,让我帮忙看下怎么回事,哈哈,说这个故障之前,我先吐槽一下,地狱不空,在社区里我一个人的力量太微弱了,这5年来我给行业内开发朋友都是全免费分析,这也让自己不堪重负 ...
对于模型的配置,98.757%的情况下,我们使用“数据批注”特性类,或者 Fluent API (重写 DbContext 类的 OnModelCreating 方法)进行配置即可。但在少数情况下,可能会考虑在 DbContext 之外配置模型。比如: 你的实体类和模型,以及 DbContext 派 ...
CsGrafeq是一项用C# AvaloniaUI实现的开源几何画板,支持AOT发布,目前支持的几何图形包含线,点,圆,多边形,角,可以通过拖拽改变图形。 ...