摘要: Monitor对象 1.Monitor.Enter(object)方法是获取锁,Monitor.Exit(object)方法是释放锁,这就是Monitor最常用的两个方法,当然在使用过程中为了避免获取锁之后因为异常,致锁无法释放,所以需要在try{} catch(){}之后的finally{}... 阅读全文
posted @ 2015-02-12 10:40 Cat Qi 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 在前文中,介绍了.NET下的多种异步的形式,在WEB程序中,天生就是多线程的,因此使用异步应该更为谨慎。本文将着重展开ASP.NET中的异步。 【注意】本文中提到的异步指的是服务器端异步,而非客户端异步(Ajax)。 对于HTTP的请求响应模型,服务器无法主动通知或回调客户端,当客户端发起一个请求... 阅读全文
posted @ 2015-02-11 09:43 Cat Qi 阅读(515) 评论(0) 推荐(1) 编辑
摘要: 在说到异步前,先来理一下几个容易混淆的概念,并行、多线程、异步。 并行,一般指并行计算,是说同一时刻有多条指令同时被执行,这些指令可能执行于同一CPU的多核上,或者多个CPU上,或者多个物理主机甚至多个网络中。 多线程,一般指同一进程中多个线程(包含其数据结构、上下文与代码片段)协作运行。在多核计... 阅读全文
posted @ 2015-02-10 16:30 Cat Qi 阅读(1066) 评论(0) 推荐(0) 编辑
摘要: ThreadStart:ThreadStart这个委托定义为void ThreadStart(),也就是说,所执行的方法不能有参数。ThreadStart threadStart=new ThreadStart(Calculate);Thread thread=new Thread(threadSt... 阅读全文
posted @ 2015-02-09 11:21 Cat Qi 阅读(32575) 评论(0) 推荐(1) 编辑
摘要: 1.WCF编程http://www.cnblogs.com/wengyuli/category/217446.html2.wcf热门问题编程示例http://blog.csdn.net/book_frank_xl/article/category/610975/43.我的WCF之旅http://ww... 阅读全文
posted @ 2015-02-09 11:19 Cat Qi 阅读(375) 评论(0) 推荐(0) 编辑
摘要: Quartz.NET是一个开源的作业调度框架,是OpenSymphony 的 Quartz API的.NET移植,它用C#写成,可用于winform和asp.net应用中。它提供了巨大的灵活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。它有很多特征,如:数据库支持,集群,插件... 阅读全文
posted @ 2015-02-06 17:26 Cat Qi 阅读(433) 评论(0) 推荐(0) 编辑
摘要: 在平时的工作中,估计大多数都做过轮询调度的任务,比如定时轮询数据库同步,定时邮件通知等等。大家通过windows计划任务,windows服务等都实现过此类任务,甚至实现过自己的配置定制化的框架。那今天就来介绍个开源的调度框架Quartz.Net(主要介绍配置的实现,因为有朋友问过此类问题)。调度的... 阅读全文
posted @ 2015-02-06 17:10 Cat Qi 阅读(599) 评论(0) 推荐(0) 编辑
摘要: 一、 Thread类的基本用法通过System.Threading.Thread类可以开始新的线程,并在线程堆栈中运行静态或实例方法。可以通过Thread类的的构造方法传递一个无参数,并且不返回值(返回void)的委托(ThreadStart),这个委托的定义如下:[ComVisibleAttrib... 阅读全文
posted @ 2015-01-27 11:30 Cat Qi 阅读(346) 评论(0) 推荐(0) 编辑
摘要: int i = -1;bool b = int.TryParse(null, out i);执行完毕后,b等于false,i等于0,而不是等于-1,切记。int i = -1;bool b = int.TryParse("123", out i);执行完毕后,b等于true,i等于123;1、(in... 阅读全文
posted @ 2015-01-23 10:01 Cat Qi 阅读(815) 评论(3) 推荐(0) 编辑
摘要: FOR XML PATH 有的人可能知道有的人可能不知道,其实它就是将查询结果集以XML形式展现,有了它我们可以简化我们的查询语句实现一些以前可能需要借助函数活存储过程来完成的工作。那么以一个实例为主. 一.FOR XML PATH 简单介绍 那么还是首先来介绍一下FOR XML PATH ,假设... 阅读全文
posted @ 2015-01-22 16:31 Cat Qi 阅读(805) 评论(0) 推荐(0) 编辑
摘要: 合并列值 --*******************************************************************************************表结构,数据如下: id value ----- ------ 1 aa 1 bb 2... 阅读全文
posted @ 2015-01-22 15:58 Cat Qi 阅读(59791) 评论(1) 推荐(1) 编辑
摘要: 正则表达式对象模型本主题介绍在处理 .NET Framework 正则表达式时使用的对象模型。 它包含下列部分:正则表达式引擎MatchCollection 和 Match 对象组集合捕获的组捕获集合单个捕获 正则表达式引擎 .NET Framework 中的正则表达式引擎由 Regex 类表示。... 阅读全文
posted @ 2015-01-15 18:00 Cat Qi 阅读(583) 评论(0) 推荐(0) 编辑
摘要: 正则表达式提供了功能强大、灵活而又高效的方法来处理文本。正则表达式的全面模式匹配表示法使您可以快速分析大量文本以找到特定的字符模式;提取、编辑、替换或删除文本子字符串;或将提取的字符串添加到集合以生成报告。对于处理字符串(例如 HTML 处理、日志文件分析和 HTTP 标头分析)的许多应用程... 阅读全文
posted @ 2015-01-15 17:25 Cat Qi 阅读(723) 评论(0) 推荐(0) 编辑
摘要: 前面两篇讲述了正则表达式的基础和一些简单的例子,这篇将稍微深入一点探讨一下正则表达式分组,在.NET中正则表达式分组是用Match类来代表的。首先先看一段代码:/// /// 显示Match内多个Group的例子/// public void ShowStructure(){ //要匹配的字符... 阅读全文
posted @ 2015-01-15 17:21 Cat Qi 阅读(3745) 评论(0) 推荐(0) 编辑
摘要: 上一篇讲述了在C#中有关正则表达式的类之间的关系,以及它们的方法,这一篇主要是将Regex这个类的用法的,关于Match及MatchCollection类会在下一篇讲到。对于正则表达式的应用,基本上可以分为验证、提取、分割和替换。仅仅利用Regex类就可以实现验证和简单替换。利用Regex类实现验证... 阅读全文
posted @ 2015-01-13 16:39 Cat Qi 阅读(531) 评论(0) 推荐(0) 编辑
摘要: 正则表达式是一门灵活性非常强的语言,匹配同样的字符串可能在不同的开发人员那里会得到不同的结果,在平常的时候也是用的时候看看相关资料,不用的时候就丢在脑后了,尽管在处理大部分情况下都能迅速处理,但是处理一些复杂的情况效率仍是不高,借着前阵子做过的一个项目涉及到正则表达式的机会,将有关资料阅读了一遍并结... 阅读全文
posted @ 2015-01-13 14:56 Cat Qi 阅读(708) 评论(0) 推荐(0) 编辑
摘要: 分组构造捕获或非捕获匹配的子表达式捕获命名匹配的子表达式捕获平衡组定义捕获非捕获组非捕获组选项非捕获零宽度正预测先行断言非捕获零宽度负预测先行断言非捕获零宽度正回顾后发断言非捕获零宽度负回顾后发断言非捕获非回溯子表达式非捕获表4.常用分组语法分类代码/语法说明捕获(exp)匹配exp,并捕获文本到自... 阅读全文
posted @ 2015-01-12 17:29 Cat Qi 阅读(1861) 评论(0) 推荐(0) 编辑
摘要: 匹配开头的结尾的,主要差别在使用了RegexOptions.Multiline多行模式上,看下面两个示例:string pattern = @"^abc";string str = "zzz\nabc";Regex regex = new Regex(pattern, RegexOptions.Mu... 阅读全文
posted @ 2015-01-12 10:38 Cat Qi 阅读(1403) 评论(0) 推荐(0) 编辑
摘要: 字符类减法: [base_group - [excluded_group]]一个字符类定义一组字符。字符类减法将产生一组字符,该组字符是从一个字符类中排除另一个字符类中的字符的结果。字符类减法表达式具有以下形式:[base_group-[excluded_group]]方括号 ([]) 和连字符 (... 阅读全文
posted @ 2015-01-09 10:37 Cat Qi 阅读(2765) 评论(0) 推荐(0) 编辑
摘要: string testStr = "你好,测试。";Regex reg = new Regex(@"\p{P}");testStr = reg.Replace(testStr, "");//testStr=你好测试 Unicode 编码并不只是为某个字符简单定义了一个编码,而且还将其进行了归类。\... 阅读全文
posted @ 2015-01-08 17:01 Cat Qi 阅读(91531) 评论(1) 推荐(4) 编辑
摘要: Normal07.8 磅02falsefalsefalseMicrosoftInternetExplorer4开发语言:C#3.0IDE:Visual Studio 2008本系列教程主要包括如下内容:1. BeginInvoke和EndInvoke方法2. Thread类3.线程池4.线程同步基础... 阅读全文
posted @ 2015-01-07 11:06 Cat Qi 阅读(1776) 评论(3) 推荐(0) 编辑
摘要: CSS颜色代码大全FFFFFF#DDDDDD#AAAAAA#888888#666666#444444#000000#FFB7DD#FF88C2#FF44AA#FF0088#C10066#A20055#8C0044#FFCCCC#FF8888#FF3333#FF0000#CC0000#AA0000#8... 阅读全文
posted @ 2014-12-28 22:31 Cat Qi 阅读(23351) 评论(0) 推荐(0) 编辑
摘要: 一、 对称加密对称加密,是一种比较传统的加密方式,其加密运算、解密运算使用的是同样的密钥,信息的发送者和信息的接收者在进行信息的传输与处理时,必须共同持有该密码(称为对称密码)。因此,通信双方都必须获得这把钥匙,并保持钥匙的秘密。单钥密码系统的安全性依赖于以下两个因素:第一、加密算法必须是足够强的,... 阅读全文
posted @ 2014-12-28 13:06 Cat Qi 阅读(420) 评论(0) 推荐(0) 编辑
摘要: 与ASP.NET1.0相比,ASP.NET2.0的各方面改进可以说是非常巨大的。但就其实现层面来说,最大的增强莫过于提供了对异步页面的支持。通过此机制,编写良好的页面可以将数据库、WebService调用等慢速操作,对网站吞吐能力的影响降到最低,并极大的改善网站的平均页面响应速度。本文将从使用和实现... 阅读全文
posted @ 2014-12-27 22:47 Cat Qi 阅读(358) 评论(0) 推荐(0) 编辑
摘要: 书写LINQ查询时又两种语法可供选择:方法语法(Fluent Syntax)和查询表达式(Query Expression)。LINQ方法语法的本质是通过扩展方法和Lambda表达式来创建查询。C# 3.0对于LINQ表达式还引入了声明式的查询表达式,也叫查询语法,通常来讲,它是创建LINQ查询的更... 阅读全文
posted @ 2014-12-20 12:52 Cat Qi 阅读(1011) 评论(0) 推荐(0) 编辑
摘要: 书写LINQ查询时又两种语法可供选择:方法语法(Fluent Syntax)和查询语法(Query Expression)。LINQ方法语法是非常灵活和重要的,我们在这里将描述使用链接查询运算符的方式来创建复杂的查询,方法语法的本质是通过扩展方法和Lambda表达式来创建查询。C# 3.0对于LIN... 阅读全文
posted @ 2014-12-20 12:50 Cat Qi 阅读(530) 评论(0) 推荐(0) 编辑
摘要: 在LINQ介绍一篇中,我们已经看到了隐式类型变量var,扩展方法(Extension method)和Lambda表达式的身影。没错,他们正是LINQ技术的基石,是他们让LINQ的实现成为可能,并且简化了LINQ表达式的书写。在这一篇中,我将和大家一一探讨C#3.0在语言功能上所作的努力,包括:扩展... 阅读全文
posted @ 2014-11-26 10:25 Cat Qi 阅读(443) 评论(0) 推荐(0) 编辑
摘要: 在上一篇的LINQ介绍中,我们已经看到了隐式类型变量var,扩展方法(extension method)和lambda表达式的身影。没错,他们正是LINQ技术的基石,是他们让LINQ的实现成为可能,并且简化了LINQ表达式的书写。在这一篇中,我将和大家一一探讨C#3.0在语言功能上所作的努力,包括:... 阅读全文
posted @ 2014-11-26 10:22 Cat Qi 阅读(403) 评论(0) 推荐(0) 编辑
摘要: LINQ是.NET Framework 3.5的新特性,其全称是 Language Integrated Query,即语言集成查询,是指将查询功能和语言结合起来。从而为我们提供一种统一的方式,让我们能在C#或VB.NET语言中直接查询和操作各种数据。LINQ的作用作为软件开发人员,我们很大一部分时... 阅读全文
posted @ 2014-11-26 10:20 Cat Qi 阅读(929) 评论(0) 推荐(0) 编辑
摘要: 计划缓冲的基本目的是通过重用执行计划来改进性能。因为,确认执行计划确实可重用很重要。因为即席查询的计划可重用性效率低下,所以一般建议尽可能依赖预定义工作负载技术。为了确保计划缓冲的高效实用,遵循以下建议。明确地参数化查询的可变部分;使用存储过程实现业务功能;使用sp_executesql避免存储... 阅读全文
posted @ 2014-10-24 21:42 Cat Qi 阅读(325) 评论(0) 推荐(0) 编辑