刷新
并发编程 - 线程浅试

博主头像 C#中线程创建有ThreadStart、ParameterizedThreadStart和Lambda表达式三种方式,线程可休眠、等待,需注意异常处理。线程非万能,需按需使用,适用于文件写、网络请求、数据库查询等场景。 ...

【UWP】让 UWP 自己托管自己 —— Windows SDK 篇

博主头像 众所周知,UWP 使用的窗口模型是 CoreWindow,但是 UWP 本身只是一个应用模型,所以完全可以创建 win32 窗口,那么我们可以不可以创建一个 win32 窗口,然后像 XAML 岛 (XAML Islands) 一样把 XAML 托管上去呢?本篇将讲述如何在 UWP 创建一个 XAM... ...

C#中如何使用异步编程

博主头像 在 C# 中,异步编程主要通过 async 和 await 关键字来实现。异步编程的目的是让程序在执行耗时操作(如 I/O 操作、网络请求等)时不会阻塞主线程,从而提高程序的性能。 1. 异步编程的核心概念 async 关键字 用于标记一个方法为异步方法。 异步方法的返回类型通常是 Task、Tas ...

HTTP与HTTPS的作用与区别

博主头像 在日常浏览网页的过程中,我们常常会看到网站的地址栏中有些是以 http:// 开头,而另一些则是以 https:// 开头。那么,它们之间到底有什么区别呢?为何 HTTPS 越来越被推荐作为网络安全的标准?在本文中,我们将深入探讨 HTTP 和 HTTPS 的作用与区别,以及它们如何保障我们在互联网 ...

C# 开发工具Visual Studio 介绍

博主头像 Visual Studio Community (社区版) 这个版本的 Visual Studio 是免费的,具备以前 Professional 版的功能。使用时间有许可限制。它对开源项目和培训、学术和小型专业团队是 免费的。Visual Studio Express版本以前是免费的,但是该产品在V ...

.net工作流elsa-触发器

博主头像 必备知识 触发器会用到书签和调度,这个在我的另外两篇文章中有分析。 什么是触发器 可以直接调用流程引擎的IWorkflowRuntime获取IWorkflowClient,然后调用它的CreateAndRunInstanceAsync来启动一个全新的流程。 也可以让流程引擎监听一个事件,当事件触发时 ...

在 ASP.NET Core WebAPI如何实现版本控制?

博主头像 在 ASP.NET Core WebAPI 中实现版本控制(Versioning)是一种常见的做法,用于管理 API 的演进和兼容性。通过版本控制,我们可以在不破坏现有客户端的情况下引入新功能或修改现有功能。以下是实现版本控制的几种常见方法: 1. 使用 URL 路径版本控制 将版本号嵌入到 URL ...

并发编程 - 初识线程

博主头像 线程是操作系统单独执行任务的最小单元,分前台和后台,有优先级,经历多个状态。C#可设置线程优先级和类型,控制线程状态的方法有Start、Sleep等,但Suspend和Abort已被弃用。多线程编程需通过同步机制控制线程执行。 ...

(二)C#同一个项目窗体应用程序复制粘贴窗体文件出现各种bug正确解决办法

博主头像 事情是这样的,如上图所示,因为一个系统里面有好几个子系统,有些子系统之间的“增删查改”又是相通的,于是想通过复制相同的窗体到另外一个文件夹的时候,如果不正确引用“新项目”将会出现以上各种错误。在网上搜索了各种方式,尝试了各种办法,最后找到下面这种亲测有效的解决办法。正确的打开方式是这样的,如下步骤操 ...

如何在 ASP.NET Core 中实现速率限制?

博主头像 在 ASP.NET Core 中实现速率限制(Rate Limiting)中间件可以帮助你控制客户端对 API 的请求频率,防止滥用和过载。速率限制通常用于保护服务器资源,确保服务的稳定性和可用性。 ASP.NET Core 本身并没有内置的速率限制中间件,但你可以通过自定义中间件或使用第三方库来实 ...

用纯.NET开发并制作一个智能桌面机器人(二):用.NET IoT库编写驱动控制两个屏幕

博主头像 前言 从.NET IoT入门开始这篇文章想必大家应该都看过了,也有很多人都该着手购买树莓派Zero 2W进行上手体验了,那么我们这篇文章就开始真正的实践了,玩硬件肯定是要亲自操作得出成果才会开心,由于牵扯到硬件,所以有的时候软件没问题,但是硬件接线错误或者接触不良都会结果不正常,这个时候就需要我们有 ...

.net工作流elsa-书签

博主头像 啥是书签 流程引擎的核心关注点是安排流程,如:第1步做什么 → 第2步做什么 → 第n步做什么...,至于各步骤具体是怎么做的,是由你来决定的,这不是流程引擎关注的重点。 流程安排可能会涉及到分叉、并行多个线路执行,但这只是流程安排的一种形式。 另外如果你硬要在步骤中直接把某件事做了也行,这种情况一 ...

.NET 数据拷贝方案选择

博主头像 应用中我们经常使用到数据的复制,在.NET中有多种方式可以实现复制数据或对象。选择哪种方式、是浅拷贝还是深拷贝,具体需求场景可以取决于对象的复杂性、数据量等,本文我们介绍主要的拷贝方式以及相对高性能的方案。 1. MemberwiseClone拷贝 浅拷贝 Object.MemberwiseClon ...

推荐一款 .NET 智慧水务物联网系统

博主头像 前言 本文将介绍如何通过智能水表(如 NB-IoT 水表)、智能消火栓、智能阀门、数据采集终端(RTU 或 PLC)及其他前置传感器和设备,开发一个高效、智能的供水管理系统。该系统能够实时采集和分析供水网络中的各种数据,帮助用户单位实现精细化管理和资源优化配置。 项目介绍 智慧水务物联网系统是用户单 ...

.Net Core 管道底层源码实现

博主头像 在 .NET Core 中,请求处理管道是一个中间件(Middleware)链,用于处理 HTTP 请求并生成响应。管道的底层实现基于 Microsoft.AspNetCore.Http 命名空间中的一些核心类和接口 1. 核心组件 1.1 HttpContext • HttpContext 是 H ...

Avalonia 简单实现输入法光标跟随效果

title: Avalonia 简单实现输入法光标跟随效果 description: 本文将告诉大家如何在 Avalonia 里面实现输入法光标跟随效果 tags: Avalonia category: 本文是在 11.1.0 的 Avalonia 版本里面实现效果 本文内容里面只给出关键代码片段, ...

List.Insert 导致的 CPU 爆高

博主头像 我们经常会使用 List<T> 作为数据存储容器。但在某些特殊场景下,List.Insert 方法可能会引发严重的性能问题,例如 CPU 占用率飙升。 示例程序 以下是一个简单的控制台程序,模拟在 List 的开头不断插入数据: internal class Program { static voi ...

<1···192021···50>