编程技巧 - 文章列表

  • 《Effective C#》:区别四个判等函数

      .Net有四个判等函数?不少人看到这个标题,会对此感到怀疑。事实上确是如此,.Net提供了ReferenceEquals、静态Equals,具体类型的Equals以及==操作符这四个判等函数。但是这四个函数之间有细微的关系,改变其中一个函数的实现会影响到其他函数的操作结果。   首先要说的是Object.ReferenceEquals和Object.Equals这两个静态函数,对于它们俩来说,是不需要进行重写的,因为它们已经完成它们所要得做的操作。  对于Object.ReferenceEquals这个静态函数,函数形势如下:\npublic static bool ReferenceEq

  • 利用C#创建 IIS 站点并设置.NET Framework版本为ASP.NET 2.0 的方法 一

    IIS 6.0以后使用MetaBase.xml存储IIS信息,因此,可以直接修改这个文件即可。\n代码如下: 很显然,这种方法比较复杂,不直观,而且需要停止IIS,影响现有网站。/// <summary>/// 本方法创建一个站点(当然,创建虚拟目录也完全没有任何问题,做法类似),并设置IIS中ASP.NET版本为2.0/// </summary>/// <param name=”sender”></param>/// <param name=”e”></param>priv

  • FCKEditor在Asp.net的安装

    不知道大家留意到没有了: FreeTextbox 不开源了,虽然我还有它以前的开源版本。\nCSDN用的这个在线编辑器很优秀。\n它的名字叫做FCKEditor\n它是开源的\n平台无关。最起码能支持 Asp, Asp.net , PHP 。 \n呵呵,以前我一直用FreeTextBox(主要是从Community Server那里知道的)。但是发现它并不是想象中好用,主要是上传图片没有弄好。\n好了好了,言归正传,说说我们今天的主角,FCKEditor,怎么在Asp.net中部署吧。\n首先,他的网站下载吧。这里要注意,你要下载两个ZIP文件,一个是Core,即核心文件,里面是整个FCKEd

  • 《Effective C#》:使用成员初始化语句

      为了方便内容的开展,我先说说一个对象的构造过程。 \n  对于类型第一个实例的构造过程大致如下:\n  1. 分配静态成员的内存空间,此时空间存储数据为0;\n  2. 执行静态成员的初始化语句;\n  3. 执行基类的静态构造函数;\n  4. 执行类型的静态构造函数;\n  5. 分配成员的内存空间,此时空间存储数据为0;\n  6. 执行成员的初始化语句;\n  7. 执行相应的基类构造函数;\n  8. 执行类型的构造函数。\n  那么对于同类型的后续创建对象,前4个步骤不用执行的,直接从第5步开始。\n  现在来说说为什么推荐使用成员初始化语句来初始化成员。由于成员初始化先于构造

  • Asp.Net页面输出到EXCEL

    利用ASP.NET输出指定内容的WORD、EXCEL、TXT、HTM等类型的文档很容易的。主要分为三步来完成。 \n一、定义文档类型、字符编码   \n   Response.Clear();    Response.Buffer= true;    Response.Charset=”utf-8″;  \n   //下面这行很重要, attachment 参数表示作为附件下载,您可以改成 online在线打开   //filename=FileFlow.xls 指定输出文件的名称,注意其扩展名和指定文件类型相符,可以为:.doc    .xls    .txt   .

  • 利用C#创建 IIS 站点并设置.NET Framework版本为ASP.NET 2.0 的方法 二

    利用.NET Framework提供的System.DirectoryServices.DirectoryEntry类可以轻松创建IIS站点,并将站点设置为ASP.NET 2.0版本。无疑,这种方法与前面的那个方法相比较,是比较好的。一下代码需要注意的地方是:\n1,没有做路径检查,这个很简单;2,没有做端口存在的检查,这个也不是很复杂;3,ScriptMapsList数组是为了简单起见,直接从字符串进行分解出来,这个需要注意你自己的应用;4;更多IIS权限处理,可根据需要进行添加。\n本方法代码如下:string ScriptMaps = @”.asp,C:WINDOWSsyst

  • ASP.NET 2.0高级控件之FileUpload控件

    应用程序中经常需要允许用户把文件上传到web服务器。尽管在ASP.NET 1.X也可以完成该功能,但在ASP.NET 2.0中使用FileUpload控件会更简单。   该控件让用户更容易地浏览和选择用于上传的文件,它包含一个浏览按钮和用于输入文件名的文本框。只要用户在文本框中输入了完全限定的文件名,无论是直接输入或通过浏览按钮选择,都可以调用FileUpload的SaveAs方法保存到磁盘上。  除了从WebControl类继承的标准成员,FileUpload控件还公开了几个只读的属性,在表5-8和表5-9列出。  表5-8 FileUpload控件属性名 称 \n类型 \n读 \n写 \n

  • C# 3.0新特性系列:隐含类型var

      一.神奇的var  在C#3.0中增加了一个变量声明var,这个声明和JavaScript 的 var类似,但也有不同。  1. 相同点,它可以用var来声明任何类型的局部变量。  2. 不同点,它仅仅负责告诉编译器,该变量需要根据初始化表达式来推断变量的类型,而且只能是局部变量。  二.相同点  它可以声明\nvar integer = 10; var name = “edisundong”; var numbers = new int[] { 1, 2, 3 };

  • ASP.NE技巧:GridView绑定DropdownList

    绑定下拉菜单,显示的时候是一个label,在点编辑的时候才显示出下拉菜单来\nhtml代码部分:\n<asp:TemplateField HeaderText=”所属大类” SortExpression=”goodsType”> <EditItemTemplate> <asp:DropDownList ID=”DropDownList1″ runat=”server”></asp:DropDownList>

  • 《Effective C#》之减少装箱和拆箱

      为了便于文章的开展,首先介绍装箱(Boxing)和拆箱(Unboxing)这两个名词。.Net的类型分为两种,一种是值类型,另一种是引用类型。这两个类型的本质区别,值类型数据是分配在栈中,而引用类型数据分配在堆上。那么如果要把一个值类型数据放到堆上,就需要装箱操作;反之,把一个放在堆上的值类型数据取出来,则需要进行拆箱操作。  例如,对于如下简单的装箱和拆箱操作语句。\n  int i = 123;  object obj = i;//Boxing  if( obj is int )  int j = (int) obj;//Unboxing