目录实现思路实现效果实现代码实现思路收集路径点集。平均采样路径点集。将路径点集转为 LineB。把 LineB 数据传给 Path。实现效果实现代码1)Vector2D.cs 代码如下using System;
using System.Collections.Generic;
usi
......
329
0
0
2023-02-04
目录介绍Version 1 - 非线程安全Version 2 - 简单的线程安全Version 3 - Double-check locking的线程安全Version 4 - 不完全懒汉式,但不加锁的线程安全Version 5 - 完全懒汉实例化Version 6 - 使用.NET 4 Lazy type 特性性能 VS 懒汉式Exception
......
430
0
0
2023-02-03
在产品展示中,通常涉及产品的展示方式、查询、排序、分页,本篇就在ASP.NET MVC下,使用Boostrap来实现。源码放在了GitHub: https://github.com/darrenji/ProductsSearchSortPage先上效果图:最上面是搜索和排序,每次点击搜索条件、排序,或者删除搜索条件都会触发异步加载。中间部分为产品展
......
326
0
0
2023-02-03
目录一、背景二、实现原理1. 基本思路2. 案例演示3. 自定义注入三:总结一、背景前段时间在训练营上课的时候就有朋友提到一个问题,为什么 Windbg 附加到 C# 程序后,程序就处于中断状态了?它到底是如何实现的?其实简而言之就是线程的远程注入,这一篇就展开说一下。二、实现原理1. 基本思路WinDbg 在附加进程的时候,会注入一个线程到 C#
......
356
0
0
2023-02-03
目录前言1. 前端上传文件到后台进行数据存储1.1编写文件上传接口1.2存储上传文件路径,读取数据并进行存储1.3前端Vue建立创建列表数据页面,包含表格功能及分页功能1.4调用接口获取表格数据方法1.5后台开发数据返回接口1.6主页面创建上传文件组件并进行引用1.7FleUpload页面主要上传文件到服务器,并回调父页面存储接口1.8这里的tit
......
327
0
0
2023-02-02
目录引言(1)原图裁剪后的效果如下(2)原图缩略后的效果如下(3)原图加文字水印后的效果如下(4)原图加图片水印后的效果如下引言图片的裁剪、缩放、与加水印,是任何系统经常要用到的功能,它们现已集成到IUtility工具中,使用十分简便。(具体代码将在文末给出,支持.NET/.NET Framework/.NET Core)现给出一张“原图”,如下:(1)原图
......
278
0
0
2023-02-01
目录01.点明观点02.C#中,using的两个作用03.using如何实现资源释放04.实践探索05.总结01.点明观点C#中,非托管资源使用之后必须释放,而using()是使用非托管资源的最佳方式,可以确保资源在代码块结束之后被正确释放,并且代码更简洁。这里说的非托管资源指的是实现IDisposable或IAsyncDisposable接口的类。usin
......
310
0
0
2023-02-01
使用typeahead.js可以实现预先输入,即智能提示,本篇在ASP.NET MVC下实现。实现效果如下:首先是有关城市的模型。public class City
{
public int Id { get; set; }
public string Name { get; set; }
public string PinY
......
335
0
0
2023-01-31
1.安装Nuget包安装以下nuget包支持windows service<PackageReference Include="Microsoft.AspNetCore.Hosting.WindowsServices" Version="6.0.10" />
<PackageReference Include="Microsoft.Ext
......
344
0
0
2023-01-17
1.概要最近在迁移 GeneralUpdate.Tool的时候需要用到文件夹选择,在MAUI中可以使用FolderPicker进行选择。注意,和上篇文章的文件选择不一样。因为在.NET MAUI中目前还没有傻瓜式直接可用的FolderPicker供开发者使用所以需要自己动手做一些修改。完整示例代码:https://gitee.com/Juster-zhu/G
......
352
0
0
2023-01-09
1.Overview经常研究.NET源码库的小伙伴会经常看到一个关键字volatile,那它在开发当中的作用是什么呢?我们一起来看看官方文档里是怎么描述的,如下:“volatile 关键字指示一个字段可以由多个同时执行的线程修改。出于性能原因,编译器,运行时系统甚至硬件都可能重新排列对存储器位置的读取和写入。声明为 volatile 的字段将从某些类型的优化
......
500
0
0
2023-01-09
以下文章来源于精致码农 ,作者liamwang现代应用程序广泛使用的是基于任务的异步编程模式(TAP),历史的 EAP 和 AMP 模式已经过时不推荐使用。今天继续总结一下 TAP 的异步操作,比如取消任务、报告进度、Task.Yield()、ConfigureAwait() 和并行操作等。虽然实际 TAP 编程中很少使用到任务的状态,但它是很多 TAP 操
......
340
0
0
2023-01-09
以下文章来源于精致码农 ,作者liamwang昨天在『.NET 大牛之路』技术群和大家聊到了对象池的话题,今天展开详细讲讲这个知识点。池这个概念大家都很熟悉,比如我们经常听到数据库连接池和线程池。它是一种基于使用预先分配资源集合的性能优化思想。简单说,对象池就是对象的容器,旨在优化资源的使用,通过在一个容器中池化对象,并根据需要重复使用这些池化对象来满足性能
......
338
0
0
2023-01-09
以下文章来源于CSharp编程大全 ,作者zls365Stream.Read 方法当在派生类中重写时,从当前流读取字节序列,并将此流中的位置提升读取的字节数。语法:public abstract int Read(byte[] buffer, int offset, int count)参数:buffer: 字节数组。此方法返回时,该缓冲区包含指定的字符数组
......
422
0
0
2023-01-09
一、概要本文主要讲解在c#中lock关键字的用法以及需要注意的坑。帮助大家避免使用不当造成的bug。作用:lock 关键字可以用来确保代码块完成运行,而不会被其他线程中断。它可以把一段代码定义为互斥段(critical section),互斥段在一个时刻内只允许一个线程进入执行,而其他线程必须等待。这是通过在代码块运行期间为给定对象获取互斥锁来实现的。在多线
......
513
0
0
2023-01-09