代码改变世界

随笔分类 -  C#

使用winform的showdialog小心内存泄漏

2011-03-24 16:20 by 假面Wilson, 1005 阅读, 收藏, 编辑
摘要: ShowDialog使用的时候,如果在窗体内调用了Close()方法,窗体只会隐藏而不会关闭,这点可以用SPY++察看。必须在Close()后调用Dispose方法才能释放窗体资源,不然就会造成内存垃圾。而采用Show方法可以直接Close而不用调用Dispose。 正确的用法 XForm xForm = new XForm(); xForm.ShowDialog(); xForm.Dispose(); 比如if(xForm.ShowDialog() == DialogResult.)这样的东东。 在网上找到解释为什么模式对话框在Close时不进行释放。 “ 那么这是为什么呢。原来Winfo. 阅读全文

区别和认识四个判等函数

2011-03-08 10:55 by 假面Wilson, 250 阅读, 收藏, 编辑
摘要: Net有四个判等函数?不少人看到这个标题,会对此感到怀疑。事实上确是如此,.Net提供了ReferenceEquals、静态Equals,具体类型的Equals以及==操作符这四个判等函数。但是这四个函数之间有细微的关系,改变其中一个函数的实现会影响到其他函数的操作结果。首先要说的是Object.ReferenceEquals和Object.Equals这两个静态函数,对于它们俩来说,是不需要进行重写的,因为它们已经完成它们所要得做的操作。对于Object.ReferenceEquals这个静态函数,函数形势如下:public static bool ReferenceEquals( obje 阅读全文

C#中时间差的计算

2011-02-17 10:33 by 假面Wilson, 5973 阅读, 收藏, 编辑
摘要: C#中时间差的计算 /// <summary> /// 已重载.计算两个日期的时间间隔,返回的是时间间隔的日期差的绝对值. /// </summary> /// <param name="DateTime1">第一个日期和时间</param> /// <param name="DateTime2">第二个日期和时间</param> /// <returns></returns> private string DateDiff(DateTime DateTime1,DateTime DateTime2 阅读全文

DataTable,List和Json的装换

2010-12-30 11:51 by 假面Wilson, 958 阅读, 收藏, 编辑
摘要: 1将DataTable或Ilist转换成JSON格式 using System; using System.Data; using System.Text; using System.Collections.Generic; using System.Reflection; /// summary /// 将DataTable或Ilist转换成JSON格式 /// /summary public class ToJson { public ToJson() { } //DataTable转成Json public static string DataTableToJso 阅读全文

几种常用排序算法总结(转载)

2010-09-02 16:21 by 假面Wilson, 493 阅读, 收藏, 编辑
摘要: 所谓排序,就是要整理文件中的记录,使之按关键字递增(或递减)次序排列起来。当待排序记录的关键字都不相同时,排序结果是惟一的,否则排序结果不惟一。在待排序的文件中,若存在多个关键字相同的记录,经过排序后这些具有相同关键字的记录之间的相对次序保持不变,该排序方法是稳定的;若具有相同关键字的记录之间的相对次序发生改变,则称这种排序方法是不稳定的。要注意的是,排序算法的稳定性是针对所有输入实例而言的。即在... 阅读全文

创建为ClickOnce清单签名的.pfx格式数字证书 (转载)

2010-08-03 09:58 by 假面Wilson, 474 阅读, 收藏, 编辑
摘要: 使用vs2005自动创建的.pfx数字证书默认有效期只有一年,并且“颁发者”、“颁发给”均为当前机器名和当前登陆用户名的组合,其实我们完全可以创建更友好的.pfx数字证书。 打开Microsoft .NET Framework 的SDK命令提示,按以下步骤操作:1、创建一个自我签署的X.509证书(.cer)和一个.pvk私钥文件,用到makecer... 阅读全文

让你一次性搞定堆、栈、值类型、引用类型 (转载)

2010-08-02 17:17 by 假面Wilson, 272 阅读, 收藏, 编辑
摘要: 在.NET中或许我们不用担心内存管理以及垃圾回收器(Garbage Collection GC)的问题,但是我们还是应该了解这些东东以便在必要的时候优化我们程序的性能。而且,如果对内存管理如何工作有所了解,那将有助于解释我们每个程序里的每个变量的运行规律。这篇文章主要内容是解释堆(Heap)和栈(Stack),各种变量以及这些变量到底是如何工作的。.Net Framework 在执行代码时,有两个... 阅读全文

C#中break、continue的用法

2010-07-20 12:52 by 假面Wilson, 4027 阅读, 收藏, 编辑
摘要: break语句: break语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch语句。由于它是用来退出循环或者switch语句,所以只有当它出现在这些语句时,这种形式的break语句才是合法的。 如果一个循环的终止条件非常复杂,那么使用break语句来实现某些条件比用一个循环表达式来表达所有的条件容易得多。 for(var i=1;i<=10;i++) { if(i==... 阅读全文

C#.NET学习笔记---C#中的装箱和拆箱

2010-05-14 15:22 by 假面Wilson, 242 阅读, 收藏, 编辑
摘要: 1.1 C#中的装箱C#中的装箱就是把一个值类型隐式地转换为object类型,转换过程中采用的是值的拷贝而不是引用,这从下面的例子可以看出:代码 1.2 C#中的拆箱就是把一个对象类型显式地转换为值类型,注意:要转换的类型必须和值类型是兼容的。举例如下:[代码] 阅读全文

C#.NET学习笔记---C#中的条件编译

2010-05-14 15:21 by 假面Wilson, 626 阅读, 收藏, 编辑
摘要: 条件编译是C#比Java多出的东西,但我跟前辈请教后,他们都说条件编译在实际的项目开发中不怎么使用.鉴于是新内容,我还是做做笔记,理解一下好了.   条件编译属于编译预处理的范畴,它能让我们通过条件编译的机制,将部分代码包括进来或者排除出去,其作用与if-else类似.条件编译指令有以下四种􀁺 #if􀁺 #elif􀁺 #else􀁺 #endif  条件编译指令有以下四种    #if   ... 阅读全文

C#.NET学习笔记---C#中类的修饰符,this关键字和static关键字

2010-05-14 15:20 by 假面Wilson, 481 阅读, 收藏, 编辑
摘要: 1. C#中类的修饰符:   public 表示不限制对该类的访问   protected 表示只能从所在类和所在类派生的子类进行访问  private 只有其所在类才能访问  internal 只有对用一个包中的应用程序或库才能访问   abstract 抽象类不允许建立类的实例   sealed 密封类不允许被继承  与Java相比,protected修饰符的定义有所改变。C#中增加的inte... 阅读全文

C#.NET学习笔记---C#中方法覆盖时override和new的比较,abstract和virtual的比较(含C#多态的实现)

2010-05-14 15:19 by 假面Wilson, 764 阅读, 收藏, 编辑
摘要: 1. C#中方法覆盖时override和new的比较 C#中override关键字使用在虚函数(virtual method)和抽象函数(abstract method)的覆盖上; C#中new关键字使用在派生类覆盖父类的"普通"函数上(也就是说非虚函数非抽象函数的情境下) 下面是代码示例:(override的用法见下面abstract和virtual比较的章节) 2. C#中abstract和v... 阅读全文

C#.NET学习笔记---C#中方法参数的传递方式: 值类型(默认),ref类型,out类型和params类型

2010-05-14 15:19 by 假面Wilson, 637 阅读, 收藏, 编辑
摘要: C#中方法的参数有四种类型1. 值参数 (不加任何修饰符,是默认的类型)2. 引用型参数 (以ref 修饰符声明) 3. 输出参数 (以out 修饰符声明) 4. 数组型参数 (以params 修饰符声明) 1. 值传递: 值类型是方法默认的参数类型,采用的是值拷贝的方式。也就是说,如果使用的是值类型,则可以在方法中更改该值,但当控制传递回调用过程时,不会保留更改的值。 使用值类型的例子如:(下面... 阅读全文

C#小数点格式化

2010-04-21 14:52 by 假面Wilson, 1278 阅读, 收藏, 编辑
摘要: 1.ToString()方法 double d=12345678.2334; Console.WriteLine(d.ToString("F2")); //1234.23 Console.WriteLine(d.ToString("###,###.00")); //12,345,678.232.Math.Round()方法 Math.Round(3.44, 1); //Returns 3.4. M... 阅读全文

Microsoft .NET 框架和 Visual Studio.NET 中的SOAP

2010-04-19 00:49 by 假面Wilson, 443 阅读, 收藏, 编辑
摘要: Keith Ballinger,ASP.NET Web Services 项目规划经理 Jonathan Hawkins,.NET Remoting 项目规划经理Pranish Kumar,ATL Server 项目规划经理Microsoft Corporation摘要:关于 .NET Remoting、ASP.NET Web Services 和 ATL Web Services 中 SOAP ... 阅读全文

新手必看的C#编程技巧!

2010-03-26 17:30 by 假面Wilson, 375 阅读, 收藏, 编辑
摘要: 1.如果可能尽量使用接口来编程 .NET框架包括类和接口,在编写程序的时候,你可能知道正在用.NET的哪个类。然而,在这种情况下如果你用.NET支持的接口而不是它的类来编程时,代码会变得更加稳定、可用性会更高。请分析下面的代码: private void LoadList (object [] items, ListBox l) {  for (int i = 0; i < items.L... 阅读全文

整理C# 二进制,十进制,十六进制 互转

2010-03-26 17:27 by 假面Wilson, 583 阅读, 收藏, 编辑
摘要: //十进制转二进制Console.WriteLine(Convert.ToString(69, 2));//十进制转八进制Console.WriteLine(Convert.ToString(69, 8));//十进制转十六进制Console.WriteLine(Convert.ToString(69, 16));//二进制转十进制Console.WriteLine(Convert.ToInt32... 阅读全文

XML操作类(转)

2010-03-24 17:35 by 假面Wilson, 254 阅读, 收藏, 编辑
摘要: using System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using ... 阅读全文

C#操作XML

2010-03-24 17:34 by 假面Wilson, 216 阅读, 收藏, 编辑
摘要: 一、简单介绍using System.Xml;//初始化一个xml实例XmlDocument xml=new XmlDocument();//导入指定xml文件xml.Load(path);xml.Load(HttpContext.Current.Server.MapPath("~/file/bookstore.xml"));//指定一个节点XmlNode root=xml.SelectSingl... 阅读全文

.net程序员应该掌握的常用类库

2010-03-24 17:03 by 假面Wilson, 285 阅读, 收藏, 编辑
摘要: 系统类Type类,Object类,String类, Arrary类,Console类, Exception类,GC类, MarshalByRefObject类, Main类。DateTime结构,Guid 结构, ICloneable接口,IComparable接口,IConvertible接口, IDisposable类, 集合类 ICollection接口,IComparer接口,IDict... 阅读全文
上一页 1 ··· 3 4 5 6 7 8 下一页