自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

TimTiny的博客

我觉得男程序员是世界上最好的男人,因为他每天坐在电脑面前问我错在哪里?

  • 博客(43)
  • 收藏
  • 关注

原创 NOSQL之LiteDB使用详解

一:什么是LiteDB定义:LiteDB是一种文档型单文件数据库,基于Key-Value方式存取数据。LiteDB 是一个 .NET 开发的小型快速轻量级的 NoSQL 嵌入式数据库,特性: 无服务器的 NoSQL 文档存储,数据存储在单一文件中 类似 MongoDB 的简单 AP。也可以参考LiteDB,以下是链接; LiteDB官网下载http://www.litedb.org/我们可以打开VS2019,通过Nuget控制台,为项目添加LiteDB的引用;...

2021-12-07 16:42:49 13312

原创 C#同步委托与异步委托学习总结

C#异步委托与同步委托学习总结

2021-12-01 16:28:22 5165

原创 C# delegate、event、Action、Func使用案例解析

C# 中 delegate、event、Action、Func使用案例解析一:delegate与event配合使用public static class Evt_Test { public static string strEquals(string str1, string str2) { Console.WriteLine(str1 + str2); return str1.Concat(str2).T

2020-12-09 14:05:54 3235

原创 《C#设计模式》【观察者模式】

Observer 与 Subject互为耦合,但是这种耦合的双方都依赖于抽象,而不依赖于具体。一、观察者模式目的我们都知道解决一个问题有N种解决方式,但在面向对象的设计中如何能做到“高内聚,低耦合”,设计可重用的对象才是我们追求的。在设计过程中,我们经常会接触到一种情况:一个对象的行为引发其它多个对象相应的行为。这时我们便可以通过观察者模式的设计思想来设计对象模型。概述观察者模式(Observer Pattern)是设计模式中行为模式的一种,它解决了上述具有一对多依赖关系的对象的.

2020-12-03 11:20:14 230

转载 C# 9.0 新特性 语法糖

C# 9.0 新特性 语法糖原文链接:原文出处C# 9.0 正在成形,我想和大家分享一下我们对下一版本语言中添加的一些主要特性的想法。对于 C# 的每一个新版本,我们都在努力让常见的编码场景的实现变得更加清晰和简单,C# 9.0 也不例外。这次特别关注的是支持数据模型的简洁和不可变表示。就让我们一探究竟吧!一、仅初始化(init-only)属性对象初始化器非常棒。它们为类型的客户端提供了一种非常灵活和可读的格式来创建对象,并且特别适合于嵌套对象的创建,让你可以一次性创建整个.

2020-11-13 15:34:34 3625

原创 《C#设计模式》【单例模式】

《C#设计模式》- 单例模式深度解析六种单例模式实现方法,以及安全,性能分析第一种:不是线程安全的public sealed class Singleton { private static Singleton instance = null ; private Singleton() { } public s...

2019-12-11 11:26:20 549

原创 《C#设计模式》 工厂三兄弟之 【简单工厂模式】,【工厂方法模式】,【抽象工厂模式】

《C#设计模式》 三种工厂设计模式 【简单工厂模式】 【工厂方法模式】 【抽象工厂模式】 第一种:简单工厂模式一:【简单工厂模式】简单工厂模式概念(Simple Factory Pattern):定义一个工厂类,它可以根据参数的不同返回不同类的实例,被创建的实例通常都具有共同的父类。因为在简单工厂模式中用于创建实例的方法是静态(static)方法,因此简...

2019-02-18 17:06:53 1799 3

原创 C#跨线程访问控件以及方法

安全委托,保证方法在线程中能安全调用

2023-04-21 16:16:15 87970 1

原创 这就是ChatGPT?

ChatGPT是由人工智能研究实验室OpenAI在2022年11月30日发布的全新聊天机器人模型,一款人工智能技术驱动的自然语言处理工具。它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,真正像人类一样来聊天交流,甚至能完成撰写邮件、视频脚本、文案、翻译、代码等任务。

2023-02-07 09:17:17 19271

原创 C# Event&Delegate

C# Action 是系统预定义的一个委托,原型为 public delegate void Action(),因此主要对象为无参数,无返回值,因此只要不追求返回值,不用自己声明委托函数,直接用Action即可。二、使用方法:Action a=new Action(函数名);或者用lambda表达式:Action a=new Action( ()=>{ 执行语句 } );扩展:如果想带参数,就用Action

2023-01-15 17:12:17 299

原创 C# 嵌入式数据库LiteDB

之前就有写过LiteDB数据库相关的一篇文章,不过内容比较简单,简单的增删查改,最近项目中又有场景要用到数据库,索性重新写了一篇。

2022-11-07 11:49:58 3380

原创 C# AutoResetEvent

C#是微软公司发布的一种由C和C++衍生出来的面向对象的编程语言、运行于.NET Framework和.NET Core(完全开源,跨平台)之上的高级程序设计语言。并定于在微软职业开发者论坛(PDC)上登台亮相。

2022-06-17 15:40:11 5566

原创 基于Halcon的C#条码识别案例(简易)

一:基于Halcon的C#条码识别案例分析read_image (Image, 'C:/Users/Administrator/Desktop/22.jpg')rgb1_to_gray (Image, GrayImage) *创建一个二维码数据模型 create_data_code_2d_model ('QR Code','default_parameters', 'maximum_recognition',DataCodeHandle) *匹配二维码模型,获取数据信息 find_d.

2022-04-19 17:13:00 2141

原创 C# Chart之双Y轴图表实现

前些天客户提出一个需求,场景如此:在Z轴下压得过程中,要实时记录Z轴的值,也要记录压力传感器的压力值,以时间为X轴,完了当时我觉得目前的Chart实现不了,通过搜罗,发现还是可以实现的,虽然效果一般,但是也勉强能达到客户要求。话不多说,上才艺; 第一个Chart Series 设置如下;第二个Series设置如下;设置完成之后呢,大概就是这样子,ChatType选择的是Spline,朋友们可根据自己的需求选择类型;效果大概就这样;下面是读取文件按钮下的事件....

2021-12-24 08:53:06 6402

原创 2021.02.02 闲言碎语

求道 时间是二零二一年二月二号,距离除夕仅剩8天,地点在苏州。此时此刻的心情非常忐忑,无心工作,无心生活,好像一切都跟我没有关系。我也不知道这是为什么,种种原因交织在一起,织就了我这张既乱又破的网。 前些日子在上海出差,把项目的事情处理完毕,回到公司开始了“摸鱼”的工作生活。 回公司才发现,组织结构的变化让原有的布局结构全部变了,以前的同事,领导现在都变了。坐在办公室,对着电脑,茫然了。。。 身边的人都在忙着处理年前最后的工作,下了班有说有笑的去打球,出去玩,而我呆...

2021-02-02 11:07:20 166 2

原创 程序员一段骂醒自己的话 (持续打卡之1/50 )

不要总因为一点小事心情就一团糟,有些情绪真的没必要,纯属庸人自扰。反正我们谁也别想活着从这个世界离开,所以笑一笑,只要死不了,其他又有什么大不了。如果你感到委屈,证明你还有底线;如果你感到迷茫,证明你还有追求;如果你感到痛苦,证明你还有力气;如果你感到绝望,证明你还有希望。从某种意义上,你永远都不会被打倒,因为你还有你。你总是喜欢把事情拖到第二天,你不能总是这么拖了,有一天,你会有很多事情要做,你的余生都不够你用。这世上根本不存在感同身受,只因你给的嬉笑太盛,无人在意你的心酸认真,所以别傻傻

2020-12-01 11:04:57 352 4

原创 《C#设计模式》《原型模式》

一:案例场景在软件系统中,当创建一个类的实例的过程很昂贵或很复杂,并且我们需要创建多个这样类的实例时,如果我们用new操作符去创建这样的类实例,这就会增加创建类的复杂度和创建过程与客户代码复杂的耦合度。如果采用工厂模式来创建这样的实例对象的话,随着产品类的不断增加,导致子类的数量不断增多,也导致了相应工厂类的增加,维护的代码维度增加了,因为有产品和工厂两个维度了,反而增加了系统复杂程度,所以在这里使用工厂模式来封装类创建过程并不合适。由于每个类实例都是相同的,这个相同指的是类型相同,但是每个实例的状态

2020-07-17 09:50:03 194

原创 《C#设计模式》【外观模式】

一:案例场景生活中,比如笔记本是一个整体,看似是一件东西,实际上只是将主机和显示器组装在一起而已,对外提供一个电源按钮,当按下电源按钮的时候,启动了主机和显示器,这里的这个电源按钮就差不多是外观模式,对外只提供了一个电源按钮。二:概念定义外观模式(Facade)的定义:为子系统中的一组接口提供一个一致的界面,用来访问子系统中的一群接口。三:案例解析某文件系统管理,包括文件的读取,加密,解密,用外观模式实现该系统功能。【具体实现如下: //加密类 pu...

2020-07-10 14:59:23 230

原创 《C#设计模式》【装饰者模式】

一:案例场景在软件开发中,我们经常想要对一类对象添加不同的功能,例如要给房子添加安防,房子暖气,房子防水等,如果此时利用继承来实现的话,就需要定义无数的类,如HouseSecuity(安防类)、HouseWarm(暖气类)等,这样就会导致 ”子类爆炸“问题,为了解决这个问题,我们可以使用装饰者模式来动态地给一个对象添加额外的职责。下面让我们看看装饰者模式。二:概念定义装饰者模式以对客户透明的方式动态地给一个对象附加上更多的责任,装饰者模式相比生成子类可以更灵活地增加功能。三:案...

2020-07-07 09:52:51 592 2

原创 C# 跨线程访问UI线程控件

C# 跨线程访问UI线程控件在C#中,由于使用线程和调用UI的线程属于两个不同的线程,如果在线程中直接设置UI元素的属性,此时就会出现跨线程错误。下面介绍两种解决方案第一种:使用控件自带的Invoke或者BeginInvoke方法。 Task.Factory.StartNew(() => { this.button1....

2020-04-24 16:32:00 936

原创 坎坎坷坷,跌跌撞撞,我的2019年度总结

生活总是让人跌跌撞撞的受伤,踉踉跄跄的成长。痛而不言,笑而不语,刻骨铭心,历历在目。兴冲冲地拿起,信誓旦旦的搁在一边,以为很快就会回来,却一晃而过,不再回来;我不想再重复过去,决定去做,写下来。 --- 写在前面 今年的冬天,比以往的没有寒风凛冽,没有下过一场冬雨,城市里没有花草树木的陪伴,背井离乡异地为伴,等待的是父母的老去,自己真的变得成熟么?今年是写博客的第三年...

2019-12-31 11:26:04 722 1

原创 《C#设计模式》 【模板方法模式】

1、C#设计模式-模板方法模式模板方法模式:提到模板我们经常会想到简历模板/PPT模板等,以简历模板为例,不同的人可以使用一样的简历模板,在填充内容时根据自己的名字/工作经历等填写自己的内容,从而形成不同的简历。在OO中模板方法模式和现实中的模板十分相似,首先要有一个封装了不可变部分的抽象类(简历的大致结构,都有姓名、性别、年龄、工作经历等),然后将可变部分延迟到子类中(不同人的简历内容不同...

2019-12-11 11:07:25 275

原创 C# 总结ManualResetEvent与AutoResetEvent【二】

接上篇C# 总结ManualResetEvent与AutoResetEventC# 总结ManualResetEvent与AutoResetEvent public class TestAutoResetEvent { Thread thin; Thread thout; Queue<int> enqueen =...

2019-12-03 15:32:25 281

原创 C# 多线程、异步线程(TaskFactory )、线程同步 (Parallel)

1、Task举例1.案例场景,现在有server有一个不固定数的任务请求,假设是个,但是做的是相同的事情。简而言之就是根据server端的请求个数来到Client来动态的开线程,调用Client的程序逻辑。方式一: List<System.Threading.Tasks.Task> taskList = new List<System.Threading.T...

2019-11-21 16:25:42 2511

原创 【日常小结】VB.NET下操作Access数据库

VB.NET下操作Access数据库啥也不说,直接上代码第一步:建立数据库以及数据表 '创建新的空access数据库表 Dim cat As Catalog = New Catalog() Dim s As String = "ProductData.mdb" If Not (My.Computer.FileSystem.Fi...

2019-11-05 09:32:57 5650

原创 浅析 C# Lock

Lock的定义以及概念实现线程同步的第一种方式是我们经常使用的lock关键字,它将包围的语句块标记为临界区,这样一次只有一个线程进入临界区并执行代码。下面第一段的几行代码是关于lock关键字的使用方式,但更重要的是我们可以通过这个例子来看到lock关键字的本质。第二段是这个方法的IL指令集,从中可以看到lock其实也是一个语法糖,它的内部实现是采用了监视器Monitor。lock关...

2019-09-05 16:32:31 6335

原创 C# 总结ManualResetEvent与AutoResetEvent【一】

C# 总结ManualResetEvent与AutoResetEvent【一】ManualResetEvent:ManualResetEvent 允许线程通过发信号互相通信。通常,此通信涉及一个线程在其他线程进行之前必须完成的任务。当一个线程开始一个活动(此活动必须完成后,其他线程才能开始)时,它调用 Reset 以将 ManualResetEvent 置于非终止状态,此线程可被...

2019-04-23 16:51:31 2597

原创 C#浅析接口与抽象基类-学习总结

C#浅析接口与抽象基类--学习总结1. 个性大于共性。 2. 差异较大的个性间具有某些相同的行为。 3. 相同行为的实现方式有较大区别。开门见山:当在差异较大的对象间寻求功能上的共性时,使用接口。当在共性较多的对象间寻求功能上的差异时,使用抽象基类。接口案例://======================================...

2019-02-15 17:00:48 804

原创 SQL Server 百万级数据分页存储过程 分页存储过程

SQL Server 百万级数据分页存储过程 分页CREATE PROC [dbo].[Common_PageList](@tab nvarchar(max),---数据表名@strFld nvarchar(max), --要显示的字段@strWhere varchar(max), --where条件 @PageIndex int, --当页页码@PageSize int, ...

2019-02-14 17:19:32 489

原创 接上篇_C#批量读取Execl文件_ C#_NPOI_批量读取Execl数据导入导出数据》

接上篇_C#批量读取Execl文件_ C#_NPOI_批量读取Execl数据导入导出数据》上篇地址:C#_Execl导入导出之前写了一个单个文件的Execl导入导出,能满足一般Execl数据操作,后面有个需求是这样的。有三十三万的数据量,甚至更多,并且分别存在不同的Execl文件中。每个文件500条数据的样子。想要集中批量处理。如果还是之前那个方式,那多不实际。话不多说,上代码。程...

2019-01-28 11:46:58 1005 6

原创 C# ListBox控件中item换行 C#重绘ListBox项

C# ListBox控件中item换行 C#重绘ListBox项WindowsForm项目开发中,Listbox控件item数据项,只能一条数据显示在一行,有的时候内容很长,体验就非常之差。简直要歇菜了。哈哈。。。不开玩笑了。下面讲下怎么实现吧!新建一个Winform项目,命名为ListAutoline,拖一个按钮(用来填充数据用的,触发吧),一个ListBox控件 . 如图;...

2019-01-18 15:38:11 10080

原创 C#_NPOI_DataTable导入导出Execl数据

C#_NPOI_DataTable导入导出Execl数据,代码逻辑简单明了,不多讲,一下请查看。首先引入Execl NPOI程序集,百度上有的下载;官网链接在此:NPOI官方下载地址下载好之后,解压引入新建的项目程序中来:如图 我这里使用的WindowsForm应用程序 名称为NPOI_EXECL然后再新建一个单独的类,因为考虑到可能封装跟扩展,新建类名为:ExeclH...

2019-01-18 15:08:13 4145 3

原创 SQL SERVER 行转列 - SQL SERVER 条件查询 Case When结构

1.Sql Server 行转列 ,select count(*) as TotalCount,SchoolId,Type,row_number()over(order by Type asc) as RowIdsfrom ALL_UserLoggroup by [Type] ,SchoolId 通过SQL PRIVOT 查询 with temp as ( sele

2017-03-27 16:29:17 1506

原创 AJAX传参,JS获取当前URL参数(超级实用)

AJAX传参,JS获取当前URL参数(超级实用)[javascript] view plain copy print? AJAX传参,JS获取当前URL参数,当我们需要获取页面的URL参数的时候,可以通过下面这段JS代码获取: [javascript] view plain copy print?var getParam = function(name){ var search =

2017-03-27 10:21:27 4413 1

原创 sql server 各种查询语句详解left jion,right join,full join ,join,inner join ,union all,union等

建库建表create database testDataBasecreate table TStudent( Stuid int identity (1,1) PRIMARY KEY, StuName varchar(50), StuClass int FOREIGN KEY REFERENCES TClass(ClassId))create table TClass

2017-01-03 14:35:54 949

原创 Jquery中事件总结 Click ,Animate,One,Bind,UnBind等

一:笔者第一个要说的事件 animatejQuery animate() - 使用队列功能默认情况下,所有 HTML 元素的位置都是静态的,并且无法移动。如需对位置进行操作,记得首先把元素的 CSS position 属性设置为 relative、fixed 或 absolute。<!DOCTYPE html><html><head><script src="/jquery/jquery-1.

2016-12-30 16:24:37 1019

原创 SQLServer跨库查询--分布式查询 用openrowset连接远程SQL或插入数据

–如果只是临时访问,可以直接用openrowset–查询示例select * from openrowset(‘SQLOLEDB’,’sql服务器名’;’用户名’;’密码’,数据库名.dbo.表名)–导入示例select * into 表 from openrowset(‘SQLOLEDB’,’sql服务器名’;’用户名’;’密码’,数据库名.dbo.表名)–创建链接服务器exec sp_addli

2016-12-15 09:18:51 3365

原创 **ASP.NET CDN缓存加速原理**

CDN缓存加速技术,以及实现原理

2016-12-12 16:55:27 1298

原创 ASP.NET Ajax 三层架构 考试系统实现(试卷模块,考试模块,评分模块,计时模块)

各位程序师大家好,上个月做了一个在线教育系统,其中有个考试系统模块,在这里有一些开发心得和大家分享。 我的代码结构是 数据库通过存储过程取出相对的数据,后台三层架构调用存储过程,前台Ajax无刷新展现数据,因为是做的手机端触屏版的网站所一分页了,其实也就是多了几个参数而已,不多说,直接上代码。 数据库: 存储过程

2016-11-18 11:39:46 1086

原创 ASP.NET SQL SERVER 三层架构 Ajax 分页

ASP.NET+三层架构+SqlServer Ajax无刷新分页1.首先数据表如下(IT_ExamPaper);2.确定查询内容(比如查询:ExamName,AddTime,ExamTimelimit),那么这里本人通过存储过程来查。存储如下:SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOcreate proc

2016-09-06 16:13:32 1094

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除