摘要:
C#中的Task.Delay()和Thread.Sleep()区别 一、简介 1.Thread.Sleep()是同步延迟,Task.Delay()是异步延迟。2.Thread.Sleep()会阻塞线程,Task.Delay()不会。3.Thread.Sleep()不能取消,Task.Delay()可 阅读全文
摘要:
Task类学习教程—Task的创建方式 一、简介 ThreadPool相比Thread来说具备了很多优势,但是ThreadPool却又存在一些使用上的不方便。比如:Task支持线程的取消、完成、失败通知等交互性操作,但是ThreadPool不支持;Task支持线程执行的先后次序,但是ThreadPo 阅读全文
摘要:
关于程式刚刚打开时候出现长时间等待解决方案 1.在程式初始化时,WebDataSource绑定InfoCommand中的SQL查询时,调用SetWhere("1=0")方法,让程式刚刚载入时不查询数据。 if (!IsPostBack) { InitializeComponent(); wdsR_Q 阅读全文
摘要:
C#调用数据库中的Procedure的方法 public ExecutionResult CreateWIPSN(MOBaseInfo moBaseInfo) { ExecutionResult execRes; string sqlText; //private InfoLightDBTools 阅读全文
摘要:
常用正则表达判别式 代码: //验证电话号码 public bool IsTelephone(string str_telephone) { return System.Text.RegularExpressions. Regex.IsMatch(str_telephone, @"^(\d{3,4} 阅读全文
摘要:
C#正则表达式 一、简介 正则表达式 是一种匹配输入文本的模式,.Net 框架提供了允许这种匹配的正则表达式引擎,模式由一个或多个字符、运算符和结构组成。下面列出了用于定义正则表达式的各种类别的常用字符、运算符和结构。 字符转义: 正则表达式中的反斜杠字符(\)指示其后跟的字符是特殊字符,或应按原义 阅读全文
摘要:
文件以及文件夹帮助类(FileHelper) 代码: using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threadi 阅读全文
摘要:
C#常用正则表达式符号大全 验证数字:^[0-9]*$ 验证n位的数字:^\d{n}$ 验证至少n位数字:^\d{n,}$ 验证m-n位的数字:^\d{m,n}$ 验证零和非零开头的数字:^(0|[1-9][0-9]*)$ 验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$ 验证有1- 阅读全文
摘要:
静态方法 一、简介 使用了static 修饰符的方法为静态方法,反之则是非静态方法。 静态方法是一种特殊的成员方法,它不属于类的某一个具体的实例,而是属于类本身。所以对静态方法不需要首先创建一个类的实例,而是采用类名.静态方法的格式 。除此之外,静态方法和非静态方法有如下区别: 1.静态方法不需要类 阅读全文
摘要:
可选参数与命名参数 一、简介 设计方法的参数是,可以将部分参数和全部参数分配默认值,然后调用这些方法的时候可以选择不提供部分实参,使用参数定义的默认值,另外,还可以在调用方法的时候通过指定参数名称来传递实参。 二、代码案例 class Program { private static int s = 阅读全文
摘要:
C#中的虚方法Virtual 一、简介 虚拟函数从C#的程序编译的角度来看,它和其它一般的函数有什么区别呢?一般函数在编译时就静态地编译到了执行文件中,其相对地址在程序运行期间是不发生变化的,也就是写死了的!而虚函数在编译期间是不被静态编译的,它的相对地址是不确定的,它会根据运行时期对象实例来动态判 阅读全文
摘要:
连接数据库与执行SQL语句 public void Test1() { string strConn = "Data Source=.;Initial Catalog=HISDB;Integrated Security=True"; using (SqlConnection conn = new S 阅读全文
摘要:
C#中类和接口的区别 一、抽象类 抽象类是特殊的类,只是不能被实例化;除此以外,具有类的其他特性;重要的是抽象类可以包括抽象方法,这是普通类所不能的。抽象方法只能声明于抽象类中,且不包含任何实现,派生类必须覆盖它们。另外,抽象类可以派生自一个抽象类,可以覆盖基类的抽象方法也可以不覆盖,如果不覆盖,则 阅读全文
摘要:
LINQ基础—Distinct子句 一、简介 Distinct返回的序列包含输入序列的唯一元素,该语句是单个集合操作。 二、案例 List<int> list = new List<int>() {1,2,3,3,3}; var result = list.Distinct(); Result的结果 阅读全文
摘要:
LINQ基础—Except子句 一、简介 Except返回差集,差集是指位于一个集合但不位于另一个集合的元素。Except是把第一个集合里面的数据 去掉在第二个集合里面出现过的数据。 二、案例 案例一: var q = (from c in db.Customers select c.Name ). 阅读全文
摘要:
LINQ基础—Intersect子句 一、简介 Intersect返回交集,交集是指同时出现在两个集合中的元素,和数据库中的Intersect方法实现功能一样。 二、案例 var q = (from c in db.Customers select c.Age ).Intersect( from e 阅读全文
摘要:
LINQ基础—UNION子句 一、简介 Union返回并集,并集是指位于两个集合中任一集合的唯一的元素(自动去重复了)。在LINQ中UNION默认是去重的,没有UNION ALL 语句,不去重用CONCAT()。 二、案例 1.查询语句写法 Union会去除重复项,相当于SQL的Union var 阅读全文
摘要:
LINQ基础—Join子句 一、简介 使用join子句可以将来自不同源序列并且在对象模型中没有直接关系的元素相关联,唯一的要求是每个源中的元素需要共享某个可以进行比较以判断是否相等的值,join子句使用特殊的equals关键字比较指定的键是否相等。 二、案例 内部连接 var innerJoinQu 阅读全文
摘要:
LINQ基础—GroupBy子句 一、简介 group子句返回一个IGrouping(T Key,T element)对象序列,编译时,group子句被转换成对GroupBy方法的调用。 二、案例 案例一: 根据首字母分组,并打印到控制台 //数据源 string[] fruits = { "app 阅读全文
摘要:
LINQ基础—OrderBy子句 一、简介 适用场景:对查询出的语句进行排序,比如按时间排序等等。说明:按指定表达式对集合排序;默认是升序,加上descending表示降序,对应的扩展方法是OrderBy和OrderByDescending。1.对查询出来的结果集进行升序或降序排列。2.可以指定多个 阅读全文