我们经常会使用 List<T> 作为数据存储容器。但在某些特殊场景下,List.Insert 方法可能会引发严重的性能问题,例如 CPU 占用率飙升。 示例程序 以下是一个简单的控制台程序,模拟在 List 的开头不断插入数据: internal class Program { static voi ...
前几天发了一篇随笔,聊了一下在使用Sqlsugar的Json列碰见的一些问题,当时对其解决方案并不是很满意。 今天没啥任务,突发奇想的想看看Freesql是如何实现的,因为国产ORM,目前就这两者争锋了。 上一篇随笔的传送门:继续聊一聊sqlsugar的一个机制问题 省流总结 sqlsugar的js ...
.NET Core 委托原理解析 在 .NET Core 中,委托(Delegate)是一种类型安全的函数指针,它允许你将方法作为参数传递给其他方法,或者将方法存储在变量中以便稍后调用。委托在事件处理、回调机制以及异步编程中非常有用。理解委托的运行原理对于掌握 .NET Core 的高级编程技巧至关 ...
最近流水线发布总是遇到nuget官方源或azure镜像源无法使用的情况,特别是下午或晚上的时间点;思来想去还是自行搭建一个nuget服务,因此本文记录了相关要点,希望能给大家多一个选择。 一、获取 Nexus 镜像 docker pull sonatype/nexus3 无法拉取镜像文件的,可以修改 ...
1.概述 经过一年时间产品升级研发,HighReport报表工具正式推出V4.0版本,报表算法和报表功能获得全面提升。HighReportV4.0带来全面质的飞跃,具有明显的产品优势。 2.亮点一:双父格扩展模型 报表引擎核心算法是父子格扩展模型,下面是常见模型 一般报表厂商下面的扩展模型是不支持的 ...
一:背景 1. 讲故事 写这篇文章起源于训练营里一位朋友最近在微信聊到他对这个问题使用了一种非常切实可行,简单粗暴的方式,并且也成功解决了公司里几个这样的卡死dump,如今在公司已是灵魂级人物,让我也尝到了什么叫反哺!对,这个东西叫 Harmony, github网址: https://github ...
前言 每年春节大家必备的抢票工具Bypass-分流抢票。分流抢票是一款免费无广适用于PC端的自动分流抢票软件。 分流抢票,是以用户为中心、人性化的抢票软件。不做广告、不做推广、不携带病毒、不收集隐私信息,并接受各方技术评测,全心全意为用户打造一款属于自己的抢票软件。 项目介绍 分流抢票是一款完全免费 ...
在 .NET Core 中,管道(Pipeline)是处理 HTTP 请求和响应的中间件组件的有序集合。每个中间件组件都可以对请求进行处理,并将其传递给下一个中间件组件,直到请求到达最终的处理程序。管道的概念类似于流水线,每个中间件组件都是流水线中的一个步骤。 1. 管道的基本概念 在 .NET C ...
前言 为什么我会想着制作一个智能桌面机器人呢?自问自答一下,看过我之前文章的小伙伴应该都知道我之前有为稚晖君开源的ElectronBot桌面机器人开发过一个桌面上位机软件叫电子脑壳,由于ElectronBot桌面机器人必须连接电脑才能使用,所以限制比较多,网友又对独立版本的桌面机器人呼声比较高,我本 ...
前言 elsa内部很多地方都会用到后台作业,也就是在后台线程中执行一堆任务,这与我们通常理解的后台作业没有区别。 elsa将后台作业也称为调度Schedul,相关功能由Elsa.Scheduling模块提供。 典型的应用是触发器调度和书签调度时会用到后台作业,但后台作业也可以用在其它地方,比如自定义 ...
在 ASP.NET Core 中,中间件(Middleware) 和 过滤器(Filters) 是两种不同的机制,用于处理请求和响应的管道。它们的作用和适用场景有所不同,以下是它们的对比和详细说明: 中间件(Middleware) 定义 中间件是 ASP.NET Core 请求处理管道中的组件,用于 ...
在 .NET Core 中,中间件(Middleware) 是处理 HTTP 请求和响应的核心组件。它们被组织成一个请求处理管道,每个中间件都可以在请求到达最终处理程序之前或之后执行操作。中间件可以用于实现各种功能,如身份验证、路由、日志记录、异常处理、静态文件服务等。 什么是中间件? 中间件是 H ...
简单、易上手、高效、实用、灵活的 ORM 框架,代码友好,开源、易扩展; nuget: Install-Package ASmile.ORM 目前支持,SQLIte 、SQLServer、MySql、Oracle 数据库; 不做铺垫,直接上示例, 首先,创建数据库对象: DBContext db = ...
跨进程设置父子窗口除了owner方案 C# 跨进程 设置窗口owner - 唐宋元明清2188 - 博客园,还有Win32-SetParent SetParent 函数 (winuser.h) - Win32 apps | Microsoft Learn SetParent可以实现将子窗口嵌入另一个 ...
在 .NET Core 中,依赖注入(Dependency Injection,DI)是一种实现控制反转(Inversion of Control,IoC)的技术,它通过将依赖对象注入到需要它们的对象中,来实现对象之间的解耦。依赖注入的生命周期决定了对象在应用程序中的创建和管理方式。常见的生命周期有 ...
AsyncLocal<T>是一个在.NET中用来在同步任务和异步任务中保持全局变量的工具类。 它允许你在不同线程的同一个对象中保留一个特定值,这样你可以在不同的函数和任务中访问这个值。 这是在实现异步任务中维持一致性和优雅性的一种重要手段。 用法 创建一个AsyncLocal实例: 你可以使用Asy ...
大家好,上一篇我们分析了 .NET 依赖注入的默认行为,其实呢还没完全讲完。今天我先给大家出一道题: public interface IDbContext { } public class SqlServerDbContext : IDbContext { } public class LongT ...
一:背景 1. 讲故事 最近聊了不少和异步相关的话题,有点疲倦了,今天再写最后一篇作为近期这类话题的一个封笔吧,下篇继续写我熟悉的 生产故障 系列,突然亲切感油然而生,哈哈,免费给别人看程序故障,是一种积阴德阳善的事情,欲知前世因,今生受者是。欲知来世果,今生做者是。 在任务延续方面,我个人的总结就 ...
在 Rx 中,Subscribe() 方法返回一个 IDisposable 接口对象,用于手动取消订阅和释放资源。另外,System.Reactive 还提供了不返回 IDisposable 的 Subscribe 重载,这些重载方法通过 CancellationToken 管理订阅的生命周期。在本... ...
这篇文章可以通过一些结构性的调整和文字优化,使得内容更具吸引力和流畅感。以下是改进后的版本: Rubyer-WPF:打造优雅、精致的 WPF 用户界面 在桌面应用开发领域,WPF(Windows Presentation Foundation)凭借其强大的 UI 设计能力和丰富的功能,始终是开发者们 ...