分类:DotNet

C#模板引擎StringTemplate

  StringTemplate 是一个模板引擎,同时支持java,C#,Python. 大家可以从http://www.stringtemplate.org/下载. StringTemplate 语法说明 StringTemplate的语法是以$xxxx$来进行分...

阅读全文 »

System.Diagnostics命名空间里的Debug类和Trace类的用途

在 .NET 类库中有一个 System.Diagnostics命名空间,该命名空间提供了一些与系统进程、事件日志、和性能计数器进行交互的类库。当中包括了两个对开发人员而言十分有用的类——Debug类和Trace类。本文介绍了这两个类的一些基本用途,旨在提高广大开发人员的开发效率。 目录 使用Debug类来帮助调试 Debug类和Trace类...

阅读全文 »

淘宝源代码图片用C# Base64编码的实现

  我们看淘宝的源代码,发现里面的图片根本就不是用网络路径http://之类显示出来的,而是用一大串字符,刚开始发现的时候觉得很奇怪(以前没见过,孤陋寡闻了,呵呵。)后来经过研究发现这是用BASE64编码实现,然后用浏览器直接让渲染出来,这样有个好处就是省掉调用图片的时候去服务器上读取,节省http请求的响应时间和服务器的性能,能用这个方法确实是一大创举。至少在国内很少看到大型网...

阅读全文 »

C#数据类型与SQL SERVER数据类型对照表

【注意】区别nchar和nvarchar字符串:一般较常使用varchar和nvarchar,而很少使用char和nchar,因为我们不需要字符补足空白而占用字节空间,相比于varchar,nvarchar更支持中文格式字符串而不保留空白。     SQL SERVER类型 ...

阅读全文 »

C#中的事件与委托趣谈

  事件与委托似乎很难以理解,这是因为它们的使用方式与常用的编码有很大的差别,例如通常编写的都是同步代码,调用一个类型的方法,会即刻出现方法执行的结果,这是符合逻辑的。但在某些情况中,同步代码未必满足需求,拿公共汽车来打个比方,如果交通管制中心希望每一辆公车到达一个站点时都发送给自己一个信号以便自己能够随时掌握交通状况,使用同步代码,公汽对象肯定需要调用管制中心对象,这样就出现了...

阅读全文 »

C#用正则表达式过滤字符串中多余的空格

  以下是C#代码:   Regex  re=new Regex(@"[\s]{2,}",RegexOptions.Compiled);   text=re.Replace(text.TrimEnd()," ");   @"[\s]{2,}&q...

阅读全文 »

C# IP地址与整数的互换算法

有时,我们需要比较IP地址的范围,或需要查询IP地址的来源等等。由于常规的IP地址(IPV4)是用点分十进制表示,并且是由4段 0 ~255 之间的10进制数表示的。所以,很明显的可以得出IP地址实际上是一个32位正整数 。在C#中,uint的取值范围是 0 ~ 4,294,967,295。因此,可以完全处理。 但是,由于数据库中的数据类型和C#的数据类型的对应关系有所差异,如果...

阅读全文 »

检测字节流的编码是否是UTF8

  几天前偶尔看到有人发帖子问“如何自动识别判断url中的中文参数是GB2312还是Utf-8编码” 也拜读了wcwtitxu使用巨牛的正则表达式检测UTF8编码的算法。 使用无数或条件的正则表达式用起来却是性能不高。 刚好曾经在项目中有类似的需求,这里把处理思路和整理后的源代码贴出来供大家参考 先聊聊原理: UTF...

阅读全文 »

C#转Json时对单引号和特殊字符串的处理

  在Asp.NET的Json处理中,通常会遇到使用单引号或其他特殊字符,如果直接使用,会截断Json数据,造成JS错误无法正确运行。 其实只要使用Javascript的escape方法编码字符串后就可以解决这个问题。   但是在C#代码中怎么解决这个问题呢? 我们自然就想到了使用Server.UrlEncode方法来编码数据,可是实践后...

阅读全文 »

异常处理之ThreadException、unhandledException及多线程异常处理

  异常处理之ThreadException、unhandledException及多线程异常处理 一:ThreadException和unhandledException的区别 处理未捕获的异常是每个应用程序起码有的功能,C#在AppDomain提供了UnhandledException 事件来接收未捕获到的异常的通知。常见的应用如下: &n...

阅读全文 »