随笔分类 - C#
摘要:Hi(高位):数据库生成,比如100、200、300 Lo(低位):本地生成,比如101、201、301 数据库给本地分配一个范围,范围用于主键的自增。 每次连接数据库的时候和当范围用完的时候都会从数据库中重新取出一个范围。 实体类: [Table("T_Menu")] public class M
阅读全文
摘要:.net 开发软件辅助 使用杨中科开发的NetAutoGUI,杨中科视频教程:1-开发环境搭建_哔哩哔哩_bilibili 网页自动化可以学习:selenium 更多的应用程序自动化开发:win32 API 本文章项目地址:NetAutoWx: 使用.net 实现自动给微信好友发送消息,没有微信登录
阅读全文
摘要:1. 创建Web程序 打开vs2022,选择ASP.NET Core Web应用(模型-视图-控制器)创建项目。 修改Program.cs public static void Main(string[] args) { var builder = WebApplication.CreateBuil
阅读全文
摘要:以下代码的源代码仓库:https://gitee.com/shllong/.net-Read-webConfig/tree/master 引用包: Microsoft.Extensions.Configuration 配置类库 Microsoft.Extensions.Configuration.B
阅读全文
摘要:需要引用包: Microsoft.Extensions.Configuration 配置文件类库 Microsoft.Extensions.Configuration.Binder 将配置文件转换成实体类的类库 Microsoft.Extensions.Configuration.Json 读取Js
阅读全文
摘要:.net 可以读取多种不同类型的配置文件,如:json、xml、ini等。 读取配置文件需要使用到的包: Microsoft.Extensions.Configuration 读取配置文件主要类库 Microsoft.Extensions.Configuration.Binder 将配置文件转换为实
阅读全文
摘要:实例化带参数类 如果一个类,在初始化时需要带一个参数,则在注册时使用AddScoped、AddTransient、AddSingleton的回调函数。 services.AddScoped<IConfigService>(s=>new TxtConfigServer() { FileName = "
阅读全文
摘要:使用类:Environment 使用方法:GetEnvironmentVariable 示例: public string GetValue(string name) { return Environment.GetEnvironmentVariable(name); }
阅读全文
摘要:.net 依赖注入使用的是构造函数注入方式,并且具有传染性。 比如有一个控制器中使用了日志和存储两个类,而存储中使用了日志类和配置类,则都只需要在其构造函数中写需要的类,然后在容器中注册,就可以直接使用。 日志类代码 // 日志接口 public interface ILog { public vo
阅读全文
摘要:实现了IDisposable接口的类会在离开using时自动调用Dispose方法 public class DisposeClass : IDisposable { public string Name { get; set; } public void Dispose() { this.Name
阅读全文
摘要:引言 控制反转(IoC)实现方法: (隐式)依赖注入:需要什么服务(类),直接在类里面写,然后系统在创建类的时候给服务(类)自动赋值。 (显式)服务定位器:需要什么服务(类)在给服务定位器要什么服务(类) 1. 初始化使用 引用包:Microsoft.Extensions.DependencyInj
阅读全文
摘要:1. 自定义Where方法 static void MM(string[] args) { IEnumerable<int> ints = new int[] { 1, 2, 4, 63, 12, 34, 46, 12, 45, 12456 }; // 使用LINQ中的Where方法 //IEnum
阅读全文
摘要:委托可以演变为匿名方法,然后由匿名方法演变成为Lambda。 static void MM(string[] args) { // 无参数无返回值的匿名方法 Action a1 = delegate () { Console.WriteLine("这是一个匿名方法"); }; a1(); // 有参
阅读全文
摘要:如果有多个Task任务,如果需要等待所有任务执行完成使用:WaitAll或WhenAll 如果只需要等待其中一个执行完成则使用WaitAny或WhenAny When表示有返回值 Wait表示无返回值 static async Task Main(string[] args) { Console.W
阅读全文
摘要:使用yield能将返回值一个一个返回回去,然后接收的地方先进行处理,处理完,等下一个返回值回来后再处理下一个。 static void Main(string[] args) { foreach (var arg in GetStrings()) { Console.WriteLine(arg);
阅读全文
摘要:原文链接:C# 使用Task执行异步操作 - Ryan_zheng - 博客园 (cnblogs.com) 为什么要使用 Task 线程是创建并发的底层工具,因此具有一定的局限性。 没有简单的方法可以从联合(Join)线程得到“返回值”。因此必须创建一些共享域。当抛出一个异常时,捕捉和处理异常也是麻
阅读全文
摘要:开始 异步方法不等于多线程,await是等但又是不等。 1. 调用系统的async方法 static async Task Main(string[] args) { await File.WriteAllTextAsync("a.txt", "xxxxxxxxxx"); string s = aw
阅读全文
摘要:引言 在用await执行方法时,方法有时候会执行特别长时间,在执行过程中想中断方法,需要使用到CancellationToken类。 控制台程序中取消Task任务 一、 创建一个执行需要很长时间的方法 static async Task DownloadAsync(string url, int n
阅读全文
摘要:wpf 展示sql server 中iamge类型数据 image数据是二进制数据,现有一个字段存储的是图片,我需要用wpf的image控件把图片展示出来 使用的是三层技术,首先定义模型层,image类型的数据在模型层中用byte[]表示 public class A { public int Id
阅读全文
摘要:wpf 样式 wpf的样式与html中的css作用基本一致,都是用作样式重用的 样式使用的标签是 Window.Resources ,样式标签是 Window 标签的子标签 样式的命名使用: x:Key="样式名称" 使用样式使用 {StaticResource 样式名称} 或者 {DynamicR
阅读全文

浙公网安备 33010602011771号