[转]C#使用ConditionalAttribute特性来实现代码调试

#if/#endif条件编译常用来由同一份源代码生成不同的结果文件,最常见的有debug版和release版。但是,这些工具在具体应用中并不是非常得心应手,因为它们太容易被滥用了,使用它们创建的代码通常都比较难理解,且难以调试。C#语言的设计者们对这种问题的解决方案是创建更好的工具,以达到为不同环境创建不同机器码的目的。C#为此添加了一个Conditional特性,该特性可以标示出某种环境设置下某个方法是否应该被调用。使用这种方式来描述条件编译要比#if/#endif更加清晰。由于编译器理解Conditional特性,所以它可以在Conditional特性被应用时对代码做更好的验证。Co...

[转]C#中IP地址与数字之间的互转(网上流传的方法有Bug)

转自:http://blog.udnz.com/Article/ConvertIPAddressToNumber.aspx项目中有IP与Int32类型相互转换的需求,于是在网上搜索了相关代码,但发现网上的代码有Bug,加以修改发布如下:/// <summary> /// 将IPv4格式的字符串转换为int型表示 /// </summary> /// <param name="strIPAddress">IPv4格式的字符</param> /// <returns></returns> public stat...

[转]在C#中截取指定长度的中文字符串(效率提高2500倍)

转自:http://blog.udnz.com/Article/CutStr.aspxC#中字符串截断本没有那么麻烦,问题就出在string.Substring()这个方法将中文也按一个字符计算,导致我们在实际应用中截取字符串(中英文组合)后的“长度”不一致。国际惯例,在网上搜索了一下,大致得到了两中截断算法: 1. 从起始位置取得字符 -> 逐一用正则表达式匹配 -> 拼接成最终字符串。(这是广为流传的方法,也是效率最低的方法。) 2. 从起始位置取得字符 -> 逐一用ASCII比较 -> 再拼接成最终字符串。相比之下,算法2比算法1高明,毕...

C#判断文件的真实格式

近日做一个在线解压的插件,仅限制上传ZIP格式,自己尝试将原RAR的压缩包改扩展名为ZIP,骗过了扩展名验证,但在解压的时候出现了异常。于是在网上找验证文件真实格式的方法。 转自:http://blog.163.com/china__xuhua/blog/static/199723169201111161478889/  public static void CheckTrueFileName() { string path = @"D:\Sheet1.doc"; System.IO....

[转]C#中调用SQL存储过程(带输入输出参数的例子)

转自:http://www.cnblogs.com/qiantuwuliang/archive/2009/06/02/1494627.html 理论:下面的CmdObj.是定义的SqlCommand对象1、获得存储过程中return语句返回的整个存储过程函数的返回值://获得存储过程return的值,定义一个参数,指明其作用是接受return的值CmdObj.Parameters.Add("RETURN_VALUE", SqlDbType.Int).Direction =ParameterDirection.ReturnValue;通过获取该参数的方式最终获得return返回的...

最近回复