C#
正怒月神
炒鸡!软件攻城狮
展开
-
IIS8 安装 .net1.1
直接上正文;原创 2023-07-12 18:37:28 · 1826 阅读 · 0 评论 -
cefSharp 获取和设置 cookie
button名button1textbox名。原创 2022-07-21 17:59:45 · 3119 阅读 · 0 评论 -
js 调用 cefsharp 方法
代码】js调用ChromiumWebBrowser方法。原创 2022-07-20 18:15:19 · 828 阅读 · 0 评论 -
C# Task.Run 和 Task.Factory.StartNew 区别
一,问题最近有水友提了个问题。Task task = Task.Factory.StartNew(async () => { while (true) { await Task.Delay( 1000); } } Task.WaitAll(new Task[] { task });结果运行到await Task.Delay( 1000);直接跳出了while,导致 Task.WaitAll完成了,这是怎么回原创 2021-04-13 18:57:29 · 2775 阅读 · 1 评论 -
C# 扩展方法
扩展方法:提供类共同方法的扩展。static void Main(string[] args) { var u = new User() { ID = 4, Name = "部门2", Age = 2, IsChild = false }; var s = u.ToJsonString(); Console.WriteLine(s); Console.ReadLine();原创 2021-01-11 09:51:50 · 158 阅读 · 0 评论 -
Timer Tick 取消事件无效
今天有朋友遇到了,Timer Tick取消事件无效的问题。归根结底还是使用了匿名函数。两个相同的匿名函数,其实指向的引用不一样。这就好比Model m1=new Model();m1=new Model();这两个Model 就不一样了。不是同一个对象。正确方法如下:将事件赋值,这样就能找到同一个引用对象。而不是匿名函数。System.Windows.Forms.Timer t = new System.Windows.Forms.Timer(); ...原创 2020-12-03 16:09:40 · 379 阅读 · 0 评论 -
Task.Yield()
关于Task.Yield(),msdn的解释:可以await Task.Yield();在异步方法中使用来强制异步完成方法。如果当前同步上下文 (SynchronizationContext对象) ,则这会将该方法的其余执行内容发布回该上下文。但是,上下文将决定如何将此工作的优先级设置为相对于可能挂起的其他工作。大多数 UI 环境中的 UI 线程上出现的同步上下文通常会将发布到上下文的工作的优先级设置为高于输入和呈现工作的优先级。出于此原因,请不要依赖await Task.Yield(...原创 2020-12-01 11:43:32 · 2987 阅读 · 0 评论 -
ef 仓储模式(异步)
Interface:using System;using System.Collections.Generic;using System.Linq;using System.Linq.Expressions;using System.Threading.Tasks;using Webdiyer.AspNetCore;namespace DiveCRM.Web.DAL.Base{ public interface IBaseRepositoryAsync<T>原创 2020-09-15 14:35:46 · 615 阅读 · 0 评论 -
ABP框架 - 依赖注入
本节内容:什么是依赖注入 传统方式的问题 解决方案 构造器注入模式 属性注入模式 依赖注入框架 ABP 依赖注入基础 注册依赖 约定注入 辅助接口 自定义/直接 注册 使用IocManager 使用Castle Windsor API 解析 构造器和属性注入 IIocResolver 和 IIocManager 另外 IShouldInitialize 接口 Asp.net Mvc 和 Asp转载 2020-09-11 12:45:42 · 572 阅读 · 0 评论 -
ABP 直接使用 dbContext
[AbpMvcAuthorize] [Route("api/Test")] [ApiController] public class TestController : DiveCRMControllerBase { private readonly IDbContextProvider<DiveCRMDbContext> _provider; public TestController(IDbContextProvider<.原创 2020-09-10 16:15:24 · 1684 阅读 · 1 评论 -
VSCode 开发 unity3D
一,安装vs2019安装就忽略了。工具--获取工具和功能选择untiy3D二,安装 Unity3D连接:unity官网的下载页面三,起飞原创 2020-09-03 11:38:52 · 6295 阅读 · 0 评论 -
Console 使用 ef core
一,nuget 添加二,创建DbContextU1为数据库表对象public class Entities : DbContext { protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) { //注入Sql链接字符串 optionsBuilder.UseSqlServer(@"Server=.;.原创 2020-08-13 14:35:34 · 320 阅读 · 0 评论 -
C# JavaScriptSerializer 自定义序列化
虽然,我个人建议使用Json.Net。但大家需求不同。遇到一个朋友,他有个需求JavaScriptSerializer并且序列化时,隐藏基类成员。这里我采用自定义序列化来实现:public static void Main(string[] args) { MyException my = new MyException(); ...原创 2019-11-01 10:25:11 · 1322 阅读 · 13 评论 -
SharpZipLib 文件/文件夹 过滤
这里就不说压缩/解压了。网上教程太多。主要说一下,解压时,如何过滤某些文件/文件夹参考地址:https://github.com/icsharpcode/SharpZipLib/wiki/FastZip主要内容:解压时:过滤文件以下表达式包含所有以“.dat”结尾的名称,但“dummy.dat”除外// To conditionally extract files ...原创 2019-10-22 21:15:20 · 608 阅读 · 1 评论 -
Lambda select 动态字段
直接上代码//测试数据public static List<User> myList = new List<User>() { new User(){ID=1, Name="部门1",Age=0,IsChild=false}, new User(){ID=2,Name="部门3",Age=1,IsChi...原创 2019-10-16 15:00:03 · 2045 阅读 · 0 评论 -
.net Json 反序列化时,属性带点
.net Json 反序列化时,属性带点使用[JsonProperty("xxx.xxx")]static void Main(string[] args) { string json="{\"pager.pageNo\":\"No2\",\"pager.totalRows\":23}"; var q=JsonConvert...原创 2018-09-29 17:20:58 · 722 阅读 · 0 评论 -
DateTime 指定格式转换
很简单,直接上代码DateTime dt = DateTime.ParseExact("20181123051641", "yyyyMMddhhmmss", System.Globalization.CultureInfo.CurrentCulture);原创 2018-12-04 09:53:58 · 10743 阅读 · 0 评论 -
C# 动态调用泛型方法
static void Main(string[] args) { #region 具体类型可传递。 Personal specifiedPersonal = new Personal(); Employee<Personal> employee = new Employee<Person...原创 2018-12-11 14:17:21 · 3424 阅读 · 0 评论 -
C# 6.0
转载:http://www.cnblogs.com/cnblogsfans/p/5086292.html 不得不说,这次的语法糖,有挺多还是很实用的。 一、字符串插值 (String Interpolation)C# 6之前我们拼接字符串时需要这样 var Name = "Jack"; var results = "Hello" + Name;或者 var N...转载 2016-12-19 14:33:28 · 473 阅读 · 0 评论 -
C# 电脑上提示未知发布者
参考6楼:http://tieba.baidu.com/p/5767451198?pid=120504172126&cid=120504203560#120504203560 解决方案:makecert生成一个证书,然后再用signtool签名转载 2018-08-13 18:13:21 · 2469 阅读 · 0 评论 -
C# Timer 的区别
首先,我们看一下 3种Timer1.System.Threading.Timer2.System.Timers.Timer3.System.Windows.Forms.Timer 主要区别,其实就一点。这两个是多线程的,只要时间到了,就会执行。哪怕前一次还没执行完,他还是会开个线程继续执行新的任务。1.System.Threading.Timer2.Syst...原创 2018-08-02 13:55:53 · 2218 阅读 · 2 评论 -
Lambda 动态表达式(排序)
网上看到的:class Program { static List<User> list = new List<User>() { new User(){ID=1,Name="Hello",Age=17,Hobby="a"}, new User(){ID=2,Name="Boy",Ag...转载 2018-05-31 11:32:13 · 2447 阅读 · 0 评论 -
VS2017打包
在要打包项目的解决方案 右键→添加→ 新建项目后出现如下选择如果没有Visual Studio Installer 说明没有安装打包插件安装打包插件:Microsoft Visual Studio 2017 Installer Projects工具 --> 扩展和更新 --> 联机,搜索Microsoft Visual Studio 2017 Instal...转载 2019-09-10 14:45:09 · 360 阅读 · 0 评论 -
C# 反射
转载: https://www.cnblogs.com/sxw117886/p/5687590.htmlC# 反射机制以及方法 目录:一. 反射的主要特性 1.反射中一个非常重要的类型就是 Type 1)当没有对象的时候使用这种方式来获取某个类型的Type 2)当已经获得对象后通过对象的GetType()方法来获取指定对象的类型的Type对象 2.获取Person类中的所有的方法 ...转载 2018-05-24 10:06:11 · 2090 阅读 · 1 评论 -
C# 比较多个数组(lambda,匿名比较器)
两个方案//逐个比较,找出最大的那个数组static void Main(string[] args) { //测试数据 int[] num0 = { 5, 8, 6 }; int[] num1 = { 12, 9, 1 }; int[] num2 = { 3, 7, 2 };...原创 2019-03-20 17:36:27 · 1046 阅读 · 0 评论 -
委托和事件(四)——简单传值
这里使用Action,直接传值,功能是:form1打开form2时,把值传过去Form1Form21 使用委托:Form1代码:private void button1_Click(object sender, EventArgs e) { Form2 f2 = new Form2(); f2.Sho...原创 2019-04-30 15:25:08 · 513 阅读 · 1 评论 -
Task ProgressBar模拟现实完成后显示TextBox
private async void Form1_Load(object sender, EventArgs e) { progressBar1.Maximum = 10; progressBar2.Maximum = 20; MyControls mc1 = new MyControls() { pb =...原创 2019-05-31 15:11:13 · 357 阅读 · 0 评论 -
windows service 安装/卸载
第一种方法:1. 开始 ->运行 ->cmd2. cd到C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727(Framework版本号按IIS配置)3. 安装服务: 运行命令行 InstallUtil.exe E:/test.exe 卸载服务: 运行命令行 InstallUtil.exe -u E:/test.exe这转载 2017-07-25 09:01:45 · 895 阅读 · 0 评论 -
VS2017 打包(详细)
1.安装打包插件:Microsoft Visual Studio 2017安装程序项目2.联机查找下面的组件,然后安装,重启VS,进行插件安装3.新建安装项目,另外,有些人可能会想这么多安装类型,怎么选。因为我们这里说的Windows程序打包,输出想要.exe状语从句:.msi,大概看一下介绍就能知道,第一个和第四个是合适的。这两个又该怎么选呢?那其实第四个就是对一些属性多了些引导,最...转载 2019-09-24 10:21:17 · 9755 阅读 · 3 评论 -
TFS 忽略 文件
让TFS忽略packages文件夹的更改很多时候我们需要使用 Nuget 进行包管理,这时在我们的解决方案文件夹下便会产生一个名为 package 的文件夹由于 Nuget 包经常要更新,TFS 会自动把这些包放到 正在挂起的更改 处,这对于强迫症十分不友好于是,这里提供两种方法让 VS 不监视 签入,package 的更新1、在 团队资源管理器 –> 正在挂起更改 –>...转载 2019-09-05 13:45:38 · 2077 阅读 · 0 评论 -
override new 的区别
override:方法提供从基类继承的成员的新实现。通过override声明重写的方法称为重写基方法。重写基方法必须具有与override方法相同的签名new:关键字可以显式隐藏从基类继承的成员。隐藏继承的成员时,该成员的派生版本将替换基类版本。虽然可以不使用new修饰符来隐藏成员,但将收到编译器警告到底什么意思呢?其实就是,当父类指向子类引用的时候...原创 2019-08-19 14:06:15 · 299 阅读 · 0 评论 -
IQueryable 和 IEnumerable(二)
IQueryable 和 IEnumerable的扩展方法一我们从ef的DbSet<T>看起来,我们看到他继承了IQueryable<T>和 IEnumerable<T>二写了个例子,分别传入Expression<Func<T,bool>>和Func<T,bool>static void M...原创 2019-07-22 11:55:03 · 303 阅读 · 8 评论 -
Task 暂停与继续
static void Main(string[] args) { CancellationTokenSource tokenSource = new CancellationTokenSource(); CancellationToken token = tokenSource.Token; ManualR...原创 2019-07-23 18:06:06 · 2809 阅读 · 0 评论 -
C# async await 举个栗子
首先,async 和 await 代表异步执行和等待。async是一个标记,告诉编译器,我可能是一个异步方法。await 代表等待,告诉编译器,这里等我返回结果。下面,我们简单说一下。一 , 首先我们看一下普通程序static void Main(string[] args) { Stopwatch sw = new Stopwa...原创 2019-06-28 16:58:02 · 667 阅读 · 11 评论 -
vs 查看IL
vs--工具--外部工具--新增1 标题:随便填,2 命令:C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools3 参数,初始目录如下:4 最后开启调试,并且打开ILIL 命令大全...原创 2019-06-25 10:45:50 · 1729 阅读 · 0 评论 -
ajax跨域,携带cookie
解决方案很简单。直接上代码:web.xml中:添加了 cors来解决跨域 CorsFilter org.apache.catalina.filters.CorsFilter CorsFilter /* ajax: $.ajax({ type: "post",原创 2017-10-16 16:35:27 · 461 阅读 · 0 评论 -
socket 编程
转载:http://www.cnblogs.com/chenxizhang/archive/2011/09/10/2172994.html你得学会并且学得会的Socket编程基础知识这一篇文章,我将图文并茂地介绍Socket编程的基础知识,我相信,如果你按照步骤做完实验,一定可以对Socket编程有更好地理解。本文源代码,可以通过这里下载 http://files.cnblogs.com/chen...转载 2018-05-10 09:43:36 · 154 阅读 · 0 评论 -
C# == 和 Equals
先看一下解释msdn对于 == 的解释:对于预定义的值类型,如果操作数的值相等,则相等运算符 (==) 返回 true,否则返回 false。 对于 string 以外的引用类型,如果两个操作数引用同一个对象,则 == 返回 true。 对于 string 类型,== 比较字符串的值。equals的解释:如果当前实例是引用类型,Equals(Object)方法测试引原创 2017-10-24 19:22:17 · 317 阅读 · 0 评论 -
C# SFTP / Renci.SshNet
最近需要通过SFTP来获取文件。下面是我整理的相关信息。以下只是大致代码,大家看看就行了。我的是window service。每天会去下载文件。1 下载Renci.SshNet通过 nuget查找 sshnet,下载Renci.SshNet。我们可以看到一些常用方法:using System;using System.Collections.G...原创 2017-10-16 10:11:24 · 1763 阅读 · 0 评论 -
ef group 封装
表达式树,传递 group public class Test where T : class { MoviesEntities db = new MoviesEntities(); public virtual List> FindList(Expression> groupBy) { var _list = d原创 2017-10-30 13:46:35 · 606 阅读 · 0 评论