随笔分类 - C#
摘要:enum 是枚举类型 不是枚举数枚举数枚举数是循环访问其关联集合的对象。它可被视作指向集合中任何元素的可移动的指针。一个枚举数只能与一个集合关联,但一个集合可以具有多个枚举数。C# foreach 语句(Visual Basic 中的 for each)使用枚举数并隐藏操作该枚举数的复杂性。.NET Framework 提供枚举数作为循环访问一个集合的简单方法。枚举数只读取集合中的数据,无法用于修改基础集合。有些语言提供一个隐藏直接使用枚举数的复杂性的语句。C# foreach 语句、C++ for each 语句和 Visual Basic For Each 语句使用枚举数。关于枚举数一个枚
阅读全文
摘要:using System;using System.Collections;using System.Collections.Generic;using System.Text;using System.Text.RegularExpressions;using System.Security.Cryptography;using System.IO;using System.Text;namespace StringClass{ public class StringHelper { /// <summary> /// 去掉字符串中的所有空格 /// </summary&g
阅读全文
摘要:IEnumerator该接口定义需要实现以下方法:Current:获取集合中的当前元素。MoveNext:将枚举数推进到集合的下一个元素。Reset: 将枚举数设置为其初始位置,该位置位于集合中第一个元素之前。实现以上方法的类也就意味着这个集合类能够被遍历访问。IEnumerableable意味着这个类能够达到上面IEnumerator的效果, 事实上也是如此,可以从这个接口定义方法中看出来:GetEnumerator: 返回一个IEnumerator类型的值IEnumerable是集合类的基础, 它解决了集合类如何遍历的问题, 所以更高级的集合类和接口都是继承IEnumerable所有能够使
阅读全文
摘要:1、命名约定Pascal和Camel命名约定编程的命名方式主要有Pascal和Camel两种(Pascal:每个单词的首字母大写,例如ProductType;Camel:首个单词的首字母小写,其余单词的首字母大写,例如productType)以下是一些常用的C#成员及其推荐命名方法:标志符规则实例与描述类classPascalApplication枚举类型enumPascal记住,是以Pascal命名,切勿包含Enum,否则FXCop会抛出Issue委托delegatePascal以Pascal命名,不以任何特殊字符串区别于类名、函数名常量const全部大写全部大写,单词间以下划线隔开接口in
阅读全文
摘要:我想,对于各位使用面向对象编程语言的程序员来说,“接口”这个名词一定不陌生,但是不知各位有没有这样的疑惑:接口有什么用途?它和抽象类有什么区别?能不能用抽象类代替接口呢?而且,作为程序员,一定经常听到“面向接口编程”这个短语,那么它是什么意思?有什么思想内涵?和面向对象编程是什么关系?本文将一一解答这些疑问。1.面向接口编程和面向对象编程是什么关系首先,面向接口编程和面向对象编程并不是平级的,它并不是比面向对象编程更先进的一种独立的编程思想,而是附属于面向对象思想体系,属于其一部分。或者说,它是面向对象编程体系中的思想精髓之一。2.接口的本质接口,在表面上是由几个没有主体代码的方法定义组成的集
阅读全文
摘要:片段 1usingSystem.Data.OleDb;...staticvoidMain(){Application.Run(newForm1());}privatevoidForm1_Load(objectsender,System.EventArgse){DataTablemyT=ExcelToDataTable("D:/文件/新武昌站点资料.xls","sheet1");Stringmystr=myT.Rows[0][0].ToString();this.textBox1.Text=mystr;}publicstaticDataTableExcel
阅读全文
摘要:通过 NHibernate 查询返回的表数据通常都是IList<T>,但在实际使用中有些数据控件在数据绑定上对IList的支持并不是很好,所以有时候将IList转换成DataSet还是有必要的。在Vinson的Blogs中提到了怎么将IList转换成DataSet,可惜源码是VB.NET的。 下面是我根据IList转换成DataSet中的VB.NET源码转换成C#,由于现在做项目是用 VS 2005 ,所以也对其改进,让它支持C#2.0 中的泛型。代码如下:Code highlighting produced by Actipro CodeHighlighter (freeware
阅读全文
摘要:BindingList的主要特点在于,它可以在加入新的元素或者元素发生修改的时候触发相应的事件,而在基本集合类中是不具有这些功能的,而且由于在基本集合中Add方法不是Virtual方法,要想让它触发时间还真不是很方便。不过BindingList可以很好的满足你的功能。 在Windows表单编程中,使用DataGridView可以很方便与数据库查询结果绑定,但是有时候查出来的数据需要经过一番处理才显示,这时候就不能直接绑定了。借助于BindingList,你便可以很方便得实现这个功能。 BindingList是一个泛型容器,可以直接赋值给DataGridView的DataSource。而且以后的
阅读全文
摘要:1、 string[] str1 = new string[] {"abc","def","ghi"}; string[] str2 = new string[] { "123","456","789"}; System.Collections.ArrayList sc = new System.Collections.ArrayList(); sc.AddRange(str1); foreach (string str in str2) { if (!sc.Contains
阅读全文
摘要:本文转载自:http://www.cnblogs.com/terrylee/articles/253667.html原文作者:网名:TerryLee本名:李会军位置:中国 北京我们知道,用SQLDMO可以实现对数据库的备份与恢复,下面给出简单的实现方法。首先需要添加对SQLDMO引用1.实现数据库的备份:1/**////<summary>2///数据库备份3///</summary>4///<returns>备份是否成功</returns>5publicboolDbBackup()6{7stringpath=CreatePath();8SQLDM
阅读全文
摘要:常见问题:Ilist <> 本身只是一个泛型接口, 既然是接口当然不能实例化,只能用如下方法 IList <Class1> IList11 =new List <Class1>(); 但是为什么要这么用呢,为什么不直接用List: List <Class1> List11 =new List <Class1>(); 第一种用法有什么好处。总结归纳一下:Ilist <> 是在 .net2.0里面才支持的 好处嘛..比如说human和tiger都有行走的功能,你可以把这些归类到interface中,当你有一个动物的类包括有这两
阅读全文
摘要:共同点:IList, List , ArrayList 通俗一点来讲就是广义的数组,C#里面称之为集合。不同于一般的狭义的数组,它们可以存放任意类型的东西,在申明或者赋值的时候指定。比如你写了一个类 Cake,然后想有一个结构来存放很多Cake的实例,那就可以用他们。区别:IList与List 通俗一点讲,只能存放同一类型的元素。比如声明的时候 声明为List<Cake> cakes=new List<Cake>(); 那么就只能用放cake的实例。在从cakes这个变量中取出元素的时候,取到的直接就是Cake类型。不需要做强行的转换。如果想要让一个‘数组’存放各种类型
阅读全文
摘要:片段 1usingSystem.Data.OleDb;...staticvoidMain(){Application.Run(newForm1());}privatevoidForm1_Load(objectsender,System.EventArgse){DataTablemyT=ExcelToDataTable("D:/文件/新武昌站点资料.xls","sheet1");Stringmystr=myT.Rows[0][0].ToString();this.textBox1.Text=mystr;}publicstaticDataTableExcel
阅读全文
摘要:网络经常有人利用机器人程序自动注册、登录、灌水从而对网站安全性构成了严重威胁。为了进一步保证安全性,越来越多的网站开始采用动态生成的图形码或附加码进行验证。验证码技术就是在服务器端,生成一个随机数,并保存在内存中,然后将随机数写入设计好的图片中,发送给浏览器,并以图片形式显示给最终的用户。通过使用验证码后,自动注册程序无法再轻易地注册和破坏。本实例实现的是绘制一个简单的纯数字验证码,并对绘制数字设置了随机彩色点。以下就贴出主要的验证码页面的代码供需要的朋友们参考:protected void Page_Load(object sender, EventArgs e){HttpContext.C
阅读全文

浙公网安备 33010602011771号