DotNet基础

时间:2023-03-08 15:36:56

DotNet基础

摘要: URL中一些字符的特殊含义,基本编码规则如下: 1、空格换成加号(+) 2、正斜杠(/)分隔目录和子目录 3、问号(?)分隔URL和查询 4、百分号(%)制定特殊字符 5、#号指定书签 6、&号分隔参数 如果需要在URL中用到,需要将这些特殊字符换成相应的十六进制的值 字符 URL编码值 空格 %20 " %22 # %23 % %25 & %26 ( %28 ) %29 + %2B , %2C / %2F : %3A ; %3B < %3C = %3D > %3E ? %3F @ %4o \ %5C | %7C阅读全文
posted @ 2011-03-24 22:18 周宏伟 阅读(258) | 评论 (0) 编辑
摘要: 一、委托Delegate一般的方法(Method)中,我们的参数总是string,int,DateTime...这些基本的数据类型(或者没有参数),比如[代码]但是有些时候,我们希望把一个方法本身当做参数传递给另一个方法,比如myObject.callMethod(HelloWorld);在没有委托之前,这是一件极困难的事情,委托出现以后,这就是一件很容易的事情了,简单点讲:委托就是一种能把方法当...阅读全文
posted @ 2010-08-08 13:23 周宏伟 阅读(195) | 评论 (0) 编辑
摘要: 1.添加Excel引用可以在.Net选项卡下添加Microsoft.Office.Interop.Excel引用,或在COM下添加Microsoft Excel 12.0 Object Library。它们都会生成Microsoft.Office.Interop.Excel.dll。 2.创建Excel。有两种方法创建一个Excel Workbook实例。1.需要一个模板文件,使用Open方法,参...阅读全文
posted @ 2010-07-15 14:51 周宏伟 阅读(467) | 评论 (0) 编辑
摘要: paramsparams 关键字可以指定在参数数目可变处采用参数的方法参数。在方法声明中的 params 关键字之后不允许任何其他参数,并且在方法声明中只允许一个 params 关键字。 示例:字面意思比较难懂,所以看示例很有用。//keywords_params.csusingSystem;classApp{publicstaticvoidUseParams(paramsobject[]list...阅读全文
posted @ 2010-07-10 08:48 周宏伟 阅读(72) | 评论 (0) 编辑
摘要: public enum StringComparison {CurrentCulture,CurrentCultureIgnoreCase,InvariantCulture,InvariantCultureIgnoreCase,Ordinal,OrdinalIgnoreCase}CurrentCulture 使用区域敏感排序规则和当前区域比较字符串。 CurrentCultureIgnoreCas...阅读全文
posted @ 2010-07-09 20:33 周宏伟 阅读(10209) | 评论 (3) 编辑
摘要: 转贴:http://blog.csdn.net/scucj/archive/2006/07/17/932884.aspx一.使用QueryString 使用QueryString在页面间传递值是一种非常常见的方法,我们在ASP中就常常用到。 (1)优点和缺点 优点:使用简单,对于安全性要求不高时传递数字或是文本值非常有效。 缺点: 1.缺乏安全性,由于它的值暴露在浏览器的URL地址中的。 2.不能...阅读全文
posted @ 2010-05-27 09:56 周宏伟 阅读(410) | 评论 (0) 编辑
摘要: 什么是进程?当一个程序开始运行时,它就是一个进程,进程包括运行中的程序和程序所使用到的内存和系统资源。而一个进程又是由多个线程所组成的。什么是线程?线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,即不同的线程可以执行同样的函数。什么是多线程?多线程是指程序中包含多个执行流,即在一个程序中可以同时运行多个不同的线程来执行不同的任务,也就是说允许单个程...阅读全文
posted @ 2010-05-21 15:37 周宏伟 阅读(422) | 评论 (0) 编辑
摘要: 上回我们说到手工解析Expression Tree,以便获得其中的逻辑或者执行我们自定义的语义动作。这种做法扩展了C#语言的威力,让我们可以用C#的语法来做更多的事情,例如Linq to Sql。今天我们要学习一种相反的做法,手工创建表达式树,然后让.NET来解析它。这是一种强大的动态编程手段。我们可以用它来完成许多以前需要Reflection.Emit才能完成的任务。LambdaExpressi...阅读全文
posted @ 2010-05-18 14:56 周宏伟 阅读(70) | 评论 (0) 编辑
摘要: 问题描述1:strUrl = "../Message/MessageNotice.aspx?Bm=公司领导&Ks=公司领导&Url=/gczjbs/XMBsuopei.aspx?kkk=1&ddd=2&Name=王华" 其中我想传的Url值是/gczjbs/XMBsuopei.aspx?kkk=1&ddd=2这一部分,但是按我这么些的话Url值只是/gczj...阅读全文
posted @ 2010-05-17 10:46 周宏伟 阅读(15847) | 评论 (2) 编辑
摘要: 表达式树概念Linq的承诺貌似Java那个梦想一样:Write Once,Run Anywhere。Java是怎么做到的?Sun等公司为我们在各种平台架构上实现了各自的虚拟机,Java的编译分为两个阶段,第一阶段将Java代码编译为字节码,在这个阶段不管在什么平台上,只要Java源代码一样生成的字节码是一致的,第二个阶段,也就是运行阶段,虚拟机会根据平台的不同生成不同的代码。就是通过将编译器分为前...阅读全文
posted @ 2010-05-14 21:30 周宏伟 阅读(216) | 评论 (0) 编辑
摘要: 在C#3.0中,一个对象创建表达式可以包含一个对象或集合初始化器,用于初始化新创建的对象的成员或新创建的集合的元素。对象创建表达式:newtype(argument-list(可选))对象或集合初试化器(可选)newtype对象或集合初试化器一个对象创建表达式可以省略构造器参数列表,并将其连同圆括号一起替换为一个对象或集合初始化器。省略构造器参数列表并将其连同圆括号一起替换为一个对象或集合初始化器...阅读全文
posted @ 2010-05-14 14:48 周宏伟 阅读(59) | 评论 (0) 编辑
摘要: 当我们需要对已有类的功能进行扩展时,我们通常会想到继承,继承已有类,然后为其加入新的行为。而C# 3.0中加入的扩展方法(Extension Methods)特性,则提供了另一种实现功能扩展的方式。扩展方法是一种特殊的静态方法,它定义在一个静态类中,但可以在其他类的对象上像调用实例方法那样进行调用。因此,通过扩展方法,我们就可以在不修改一个类型的前提下对一个类型进行功能上的扩充,这种方法并不会产生...阅读全文
posted @ 2010-05-14 14:46 周宏伟 阅读(26) | 评论 (0) 编辑
摘要: 20.2.1引入匿名类型在很多情况下,我们需要一种能够临时将一批具有一定关联的数据存放起来的对象;或者在某些情况下,我们对仅一个对象的“形状”(如属性的名字和类型等)比较感兴趣。例如Book类,当它和其他商品放在一起进行查询时,我们可能仅对其名称和价格感兴趣,并且希望将这两种属性放在另外一个单独的临时对象中以备今后使用。这时,我们关注的仅仅是这个临时对象具有Name和Pri...阅读全文
posted @ 2010-05-14 14:39 周宏伟 阅读(547) | 评论 (0) 编辑
摘要: 20.1隐式类型在C#3.0中增加了一个变量声明var,这个声明和JavaScript 的var类似,但也有不同。相同之处是它可以用var来声明任何类型的局部变量;而不同之处在于它仅仅负责告诉编译器,该变量需要根据初始化表达式来推断变量的类型,而且只能是局部变量。20.1.1隐式类型局部变量的声明与使用在C# 3.0中,引进了一个新的关键字叫做var。var允许你声明一个新变量,它的类型是从用来初...阅读全文
posted @ 2010-05-14 14:26 周宏伟 阅读(838) | 评论 (0) 编辑
摘要: 在C#2.0中引入了匿名方法,允许在期望出现委托的时候以“内联”的代码替代之。尽管匿名方法提供了函数式编程语言中的很多表达能力,但匿名方法的语法实在是太罗嗦了,并且很不自然。Lambda表达式为书写匿名方法提供了一种更加简单、更加函数化的语法。实际上Lambda表达式的本质是匿名方法,也即是当编译我们的程序代码时,编译器会自动帮我们将Lambda表达式转换为匿名方法。20....阅读全文
posted @ 2010-05-14 14:18 周宏伟 阅读(43) | 评论 (0) 编辑
摘要: 在定义泛型类时,可以对客户端代码能够在实例化类时用于类型参数的类型种类施加限制。如果客户端代码尝试使用某个约束所不允许的类型来实例化类,则会产生编译时错误。这些限制称为约束。约束是使用 where 上下文关键字指定的。下表列出了六种类型的约束:约束 说明 T:结构类型参数必须是值类型。可以指定除 Nullable 以外的任何值类型。有关更多信息,请参见使用可空类型(C# 编程指南)。T:类类型参数...阅读全文
posted @ 2010-04-29 16:31 周宏伟 阅读(299) | 评论 (0) 编辑
摘要: 大白话之C#系列大白话系列之C#委托与事件讲解(一)大白话系列之C#委托与事件讲解(二)大白话系列之C#委托与事件讲解(三)大白话系列之C#委托与事件讲解大结局博主的讲解淋漓尽致!好文!http://www.cnblogs.com/wudiwushen/category/239800.html阅读全文
posted @ 2010-04-27 14:12 周宏伟 阅读(78) | 评论 (0) 编辑
摘要: 前一阵给*局做项目,用到了公钥加密技术及对称密钥加密技术。信息通过3DES进行加密,而密钥通过RSA公钥体系传送。客户端使用CPU卡eKey进行解密。但是在系统编写过程中发现,.net中的RSA加密算法为了提高安全性,在待加密数据前要添加一些随机数,因此,使用.NET中的RSA加密算法一次最多加密117字节数据(多于117字节需要拆分成多段分别加密再连接起来),经过加密后得到一个长度为128字节...阅读全文
posted @ 2010-04-22 15:37 周宏伟 阅读(177) | 评论 (0) 编辑
摘要: 该算法于1977年由美国麻省理工学院MIT(Massachusetts Institute of Technology)的Ronal Rivest,Adi Shamir和Len Adleman三位年轻教授提出,并以三人的姓氏Rivest,Shamir和Adlernan命名为RSA算法。该算法利用了数论领域的一个事实,那就是虽然把两个大质数相乘生成一个合数是件十分容易的事情,但要把一个合数分解为两个...阅读全文
posted @ 2010-04-22 13:38 周宏伟 阅读(2910) | 评论 (0) 编辑
摘要: 最近收到了很多朋友的来信说希望提供DES的C#代码,但是我个人认为,.NET 提供了很多标准函数,没有必要自己写,所以我也只发布了C++的代码,如果大家一定要熟悉加密过程的话,也可以自己动手实现整个过程,这个可以参考我博客里的DES 算法介绍,和yxyDES2 Class的代码,代码注释相当的清楚。   .NET 提供了很多标准加密、解密函数,我简要介绍一下DES,SHA1,RSA的标准函数的使用...阅读全文
posted @ 2010-04-22 13:19 周宏伟 阅读(172) | 评论 (0) 编辑
摘要: using System.Reflection;using System.Reflection.Emit;/// <summary>/// 用于创建实现 System.ComponentModel.INotifyPropertyChanged 接口的动态类型,并添加各个 public 属性的定义/// </summary>public class DynamicINotif...阅读全文
posted @ 2010-03-27 10:08 周宏伟 阅读(331) | 评论 (0) 编辑
摘要: using System;using System.Reflection;using System.Reflection.Emit;/// <summary>/// 用于创建动态类型,并添加各个 public 属性的定义/// </summary>public class DynamicTypeBuilder{ TypeBuilder tb; /// <summary...阅读全文
posted @ 2010-03-27 10:08 周宏伟 阅读(138) | 评论 (0) 编辑
摘要: 1.aspnetupload这是国人开发的一款收费.net控件,官网http://www.aspnetupload.net/ (不过也有一个免费版本的,允许上传10M内容,一般情况下也够了,收费版也不贵,大致就600 RMB)它的大概原理是把文件分成一块一块的上传,然后客户端用ajax不断刷新从而显示进度条.这也是我使用时间最长的一种解决方案,在IIS7出现以前完全没有任何问题,但IIS7及以上版...阅读全文
posted @ 2010-03-21 13:41 周宏伟 阅读(108) | 评论 (0) 编辑
摘要: 知名计算器图书作家 - 章立民老师,几年前有两篇文章,提到 DataSource 控件的 DataSourceMode 属性:立民讲堂ASP.NET 2.0 – 善用DataSourceMode属性 :http://www.cnblogs.com/liminzhang/archive/2006/12/18/595332.htmlASP.NET 2.0 - 选用DataSet或DataR...阅读全文
posted @ 2010-03-20 22:50 周宏伟 阅读(107) | 评论 (0) 编辑
摘要: 在 .NET 1.x 的 C#、.NET 2.0 的各种语言中,有所谓的 using statement (如本 blog 上一篇帖子「使用ADO.NET 的NextResult 方法取得多个Result Set」的代码范例),可保证自动 dispose (释放) unmanaged object (对象) 所占用的资源,包括因未处理的 exception 而造成区块结束 (但 StackOver...阅读全文
posted @ 2010-03-20 22:41 周宏伟 阅读(297) | 评论 (0) 编辑
摘要: 随着 .NET 平台上,LINQ、ORM 框架、Dynamic Data、... 各种数据访问技术不断推陈出新,程序员也一直追着新技术跑,但对底层和代码细节却越来越难以掌控。当项目性能需要调优时,通常也只能对数据库加入更多索引,而多数人已难以对数据访问的代码优化,且手写 SQL 语句的功力似乎也持续退化中。 大家在拼命追求新技术时,似乎已忘记微软的 MCTS 证照,还有一门 ADO.NET 的科目...阅读全文
posted @ 2010-03-20 11:47 周宏伟 阅读(59) | 评论 (0) 编辑
摘要: 一、委托Delegate一般的方法(Method)中,我们的参数总是string,int,DateTime...这些基本的数据类型(或者没有参数),比如[代码]但是有些时候,我们希望把一个方法本身当做参数传递给另一个方法,比如myObject.callMethod(HelloWorld);在没有委托之前,这是一件极困难的事情,委托出现以后,这就是一件很容易的事情了,简单点讲:委托就是一种能把方法当...阅读全文
posted @ 2010-03-19 09:52 周宏伟 阅读(157) | 评论 (0) 编辑
摘要: 单线程的winfom程序中,设置一个控件的值是很easy的事情,直接 this.TextBox1.value = "Hello World!";就搞定了,但是如果在一个新线程中这么做,比如:[代码]运行时,会报出一个无情的错误:线程间操作无效: 从不是创建控件“textBox1”的线程访问它。究其原因,winform中的UI控件不是线程安全的,如果可以随意在任何线程中改变其...阅读全文
posted @ 2010-03-19 09:51 周宏伟 阅读(601) | 评论 (0) 编辑
摘要: 使用国外开源加压解压库ICSharpCode.SharpZipLib实现加压,该库的官方网站为http://www.icsharpcode.net/OpenSource/SharpZipLib/Download.aspx使用体验:可以照着例子实现简单的加压解压,可以加压一个文件夹中的所有文件,但没有提供加压子文件夹的说明。目前网上的一些代码有的无法加压空文件夹,有的加压了用rar解不开,这是一点需...阅读全文
posted @ 2010-03-15 22:12 周宏伟 阅读(78) | 评论 (0) 编辑
摘要: class NullableExample{ static void Main() { int? num = null; if (num.HasValue == true) { System.Console.WriteLine("num = " + num.Value); } else { System.Console.WriteLine("num = Null"); } // y is set ...阅读全文
posted @ 2010-02-04 11:43 周宏伟 阅读(71) | 评论 (0) 编辑
摘要: 常见问题:Ilist <> 本身只是一个泛型接口, 既然是接口当然不能实例化,只能用如下方法 IList <Class1> IList11 =new List <Class1>(); 但是为什么要这么用呢,为什么不直接用List: List <Class1> List11 =new List <Class1>(); 第一种用法有什么好处。...阅读全文
posted @ 2010-02-04 10:16 周宏伟 阅读(133) | 评论 (0) 编辑
摘要: Scott Guthrie 的博客中提到, VS2008 如果用 VSS 做源代码管理,会有一些bug。 在他的博客中提到: “我们正在更新Visual SourceSafe 2005,以使它能和VS 2008合作。我们原先计划在上个星期就发布的,但在发布前发现了一个缺陷,会延迟几个星期。我们目前计划在几个星期内发布。Brian Harry在这里的博客帖子里对此有详述。” ...阅读全文
posted @ 2010-02-04 08:26 周宏伟 阅读(1758) | 评论 (0) 编辑
摘要: 原文地址:http://blog.bossma.cn/archives/2009/09/271一个项目要用到ActiveX控件,参照网上众多的例子,ActiveX控件倒是很容易就搞出来了; 然后做了一个【安装项目】,倒是可以使用,只不过需要在客户端手动点击安装,下一步,下一步…觉得不是很爽; 又试了试【CAB项目】,好像没人用VS2008来做,费了点功夫,终于找到解决办法。 特将此经验...阅读全文
posted @ 2010-01-22 20:08 周宏伟 阅读(5548) | 评论 (3) 编辑
摘要: C#格式化数值结果表字符 说明 示例 输出 C货币string.Format("{0:C3}", 2)$2.000D十进制string.Format("{0:D3}", 2)002E科学计数法1.20E+0011.20E+001G常规string.Format("{0:G}", 2)2N用分号隔开的数字string.Format("{0:N}", 250000)250,000.00X十六进制str...阅读全文
posted @ 2010-01-09 11:09 周宏伟 阅读(77) | 评论 (0) 编辑
摘要: 天气预报Web Service,数据来源于中国气象局 Endpoint Disco WSDL IP地址来源搜索Web Service(是目前最完整的IP地址数据) Endpoint Disco WSDL 随机英文、数字和中文简体字Web Service Endpoint Disco WSDL 中国邮政编码 <-> 地址信息双向查询/搜索Web Service Endpoint Disc...阅读全文
posted @ 2009-12-22 16:16 周宏伟 阅读(97) | 评论 (0) 编辑
摘要: 1.MVC教程首页http://www.asp.net/learn/mvc/?lang=cs2.MVC概况2.1创建一个基于数据库的"电影"web应用http://www.asp.net/learn/mvc/tutorial-21-cs.aspx2.2MVC执行过程http://www.asp.net/learn/mvc/tutorial-22-cs.aspx2.3理解Models(模型),Vie...阅读全文
posted @ 2009-12-06 13:13 周宏伟 阅读(3065) | 评论 (0) 编辑
摘要: 转自:http://www.cnblogs.com/thinhunan/archive/2005/12/09/293535.html1. 数据库访问性能优化    数据库的连接和关闭   访问数据库资源需要创建连接、打开连接和关闭连接几个操作。这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源。ASP.NET中提供了连接池(Connection Pool)改善打开和关闭数据库对性能...阅读全文
posted @ 2009-12-06 13:08 周宏伟 阅读(20) | 评论 (0) 编辑
摘要: 从VS2008开始,有一个新的工具可以帮助开发人员更好地了解自己编写的代码。这个工具就是“计算代码度量值” 关于该功能及几个指标的具体介绍,请参考下面的官方文档 代码度量是一组软件度量值,使开发人员可以更好地了解他们正在开发的代码。利用代码度量,开发人员可以了解哪些类型和/或方法应该返工或进行更彻底的测试。开发团队可以识别潜在的风险、了解项目的当前状态,并跟踪软件开发的进...阅读全文
posted @ 2009-12-04 22:14 周宏伟 阅读(3311) | 评论 (0) 编辑
摘要: 委托和事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Framework中的委托和事件、委托和事件对O...阅读全文
posted @ 2009-11-28 22:55 周宏伟 阅读(60) | 评论 (0) 编辑
摘要: 导论 在学习C#中的委托和事件过程中,我读了许多文章来理解他们二者究竟是怎么一回事,以及如何使用他们,现在我将整个的理解过程陈述以下,我学到的每一方面,恐怕也是你们需要掌握的 :-)。 什么是委托? 委托和事件这两个概念是完全配合的。委托仅仅是函数指针,那就是说,它能够引用函数,通过传递地址的机制完成。委托是一个类,当你对它实例化时,要提供一个引用函数,将其作为它构造函数的参数。 每一个委托都...阅读全文
posted @ 2009-11-28 20:48 周宏伟 阅读(60) | 评论 (1) 编辑
摘要: Web Service身份验证解决方案一:通过通过SOAP Header身份验证。1.我们实现一个用于身份验证的类,文件名MySoapHeader.cs MySoapHeader类继承自System.Web.Services.Protocols.SoapHeader。且定义了两个成员变量,UserName和PassWord,还定义了一个用户认证的函数ValideUser。它提供了对UserName...阅读全文
posted @ 2009-11-26 08:52 周宏伟 阅读(95) | 评论 (0) 编辑
摘要: 1、 什么是反射2、 命名空间与装配件的关系3、 运行期得到类型信息有什么用4、 如何使用反射获取类型5、 如何根据类型来动态创建对象6、 如何获取方法以及动态调用方法7、 动态创建委托1、什么是反射 Reflection,中文翻译为反射。 这是.Net中获取运行时类型信息的方式,.Net的应用程序由几个部分:‘程序集(Assembly)’、‘模块(Module...阅读全文
posted @ 2009-11-06 13:52 周宏伟 阅读(19) | 评论 (0) 编辑
摘要: 首先我们建立一个类库,将它生成为HelloWorld.dll,using System;namespace Webtest{ public interface interface1 { int add(); } public class ReflectTest:interface1 { public String Write; private String Writec; public Str...阅读全文
posted @ 2009-11-06 13:49 周宏伟 阅读(81) | 评论 (0) 编辑
摘要: 一、概述 当两个进程在进行远程通信时,彼此可以发送各种类型的数据。无论是何种类型的数据,都会以二进制序列的形式在网络上传送。发送方需要把这个对象转换为字节序列,才能在网络上传送;接收方则需要把字节序列再恢复为对象。 把对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为对象的过程称为对象的反序列化。 二、对象的序列化主要有两种用途: 1)把对象的字节序列永久地保存到硬盘上,通常存放在一个文...阅读全文
posted @ 2009-11-03 16:23 周宏伟 阅读(26) | 评论 (0) 编辑
摘要: 现在来介绍一下Visual Studio 2008的快捷键,其实Visual Studio 2008作为新一代集成开发工具,功能更加的强大。很多快捷键和Visual Studio 2005基本一样,但是略有差别。作为一款更加成熟的集成开发工具,它又为我们提供了哪些快捷方式呢,下面详细介绍Visual Studio 2008快捷键和具体的操作的意义。 【窗口快捷键】Ctrl+W,W: 浏览器窗口 C...阅读全文
posted @ 2009-10-30 08:45 周宏伟 阅读(118) | 评论 (0) 编辑
摘要: Visual Studio 2005作为一款成熟的集成开发工具,使用它可以加快我们的系统开发效率。而在实际学习工作中,我们除了使用Visual Studio 2005提供的友善的UI来进行操作意外,我们还可以使用其快捷键方式,来快速执行我们的操作。下面列举的Visual Studio 2005快捷键和具体的操作。整理一下与大家分享。 【快捷键功能】CTRL + SHIFT + B生成解决方案 CT...阅读全文
posted @ 2009-10-30 08:44 周宏伟 阅读(55) | 评论 (0) 编辑
摘要: 一.摘要所有Web程序都会使用Session保存数据. 使用独立的Session服务器可以解决负载均衡场景中的Session共享问题.本文介绍.NET平台下建立Session服务器的几种办法, 并介绍在使用Session时的各种经验和技巧. 二.关于Session,SessionID和CookiesSession数据保存在服务器端, 但是每一个客户端都需要保存一个SessionID, Sessio...阅读全文
posted @ 2009-10-27 16:12 周宏伟 阅读(19) | 评论 (0) 编辑
摘要: .NET RIA Services团队发表了一个发布计划,涉及从7月的CTP开始到2010年年初RTW结束这段时间的内容。由于功能可能会根据用户的反馈进行变更,所以具体的发布日期尚未确定。计划好的里程碑,及它们相应的特性集如下:CTP - 2009年7月这依旧是一个预览版,并非V1版。我们计划从EULA(最终用户许可协议)中删掉Go-Live限制——不过,使用它还是需要你自...阅读全文
posted @ 2009-10-23 08:38 周宏伟 阅读(80) | 评论 (0) 编辑
摘要: 程序编译后 打包安装前用VS自带的dotfuscator.exe对编译后的exe或dll进行简单加密以起到一定保护作用一定程度上阻止VS自带的ildasm.exe或其他反编译工具如Reflector.exe等对程序源码的查看保护自己的程序1. ildasm.exe2. dotfuscator.exe3. Reflector====================1. ildasm.exe=====...阅读全文
posted @ 2009-10-20 16:15 周宏伟 阅读(407) | 评论 (0) 编辑
摘要: ASP(Active Server Pages)技术的Session对象用于存储用户在对话期间的私有信息。当前用户的Session对象中定义的变量和对象能在页面之间共享,但是不能为应用中其他用户所访问,因此在用ASP开发网络应用程序时,可以利用Session对象保存和跟踪用户的状态信息。Session对象有一个十分重要的属性:Timeout,它用于设置在会话资源被释放前,会话对象所能保持非活动状态...阅读全文
posted @ 2009-10-10 08:56 周宏伟 阅读(12911) | 评论 (0) 编辑
摘要: EffectiveC#的翻译文章。这里可能还有一些关于C#程序设计效率相关的问题。感谢作者的工作,为我们提供了这么好的资料!全文地址:http://www.cnblogs.com/WuCountry/category/85054.html?Show=All阅读全文
posted @ 2009-10-07 14:45 周宏伟 阅读(107) | 评论 (0) 编辑
摘要: 在迭代器块中用于向枚举数对象提供值或发出迭代结束信号。它的形式为下列之一:yield return <expression>;yield break;计算表达式并以枚举数对象值的形式返回;expression 必须可以隐式转换为迭代器的 yield 类型。yield 语句只能出现在 iterator 块中,该块可用作方法、运算符或访问器的体。这类方法、运算符或访问器的体受以下约束的控制...阅读全文
posted @ 2009-10-07 14:25 周宏伟 阅读(66) | 评论 (0) 编辑
摘要: 两种赋值方式的比较:string str="";string str=string.Empty;理论上讲:string.Empty是一个Static的属性,使用时不分配存储空间,而在用""时,系统会分配一个长度为空的存储空间。不过编译系统应该会优化,也就是说,比如你程序中有10个地方用到了"",但好的编译系统应该引用的是同一个对象。所以用""也就是浪费一个对象空间而已。实战:测试程序如下:name...阅读全文
posted @ 2009-10-06 10:34 周宏伟 阅读(27) | 评论 (0) 编辑
摘要: 常用版本控制软件 根据查看网络上的资料,看到一般的公司使用的版本控制软件大致如下: (其中的等级评语来自http://www.hansky.com/cn/news/select_scm3.html 但其中没有介绍关于Perforce,StarTeam) 1.Clear case --------〉中坚级 2.CVS --------〉开源奇葩 3.Visual SourceSafe -------...阅读全文
posted @ 2009-09-24 09:27 周宏伟 阅读(234) | 评论 (0) 编辑
摘要: 解决思路:我们可以通过对web.config文件增加 <location> 配置节来对带特定文件 ,如下:<location path="此处为目录或文件名"> <system.web> <globalization fileEncoding="utf-8" requestEncoding="utf-8" responseEncoding="utf-8" ...阅读全文
posted @ 2009-09-22 09:24 周宏伟 阅读(93) | 评论 (0) 编辑
摘要: 四舍六入,奇数进偶数不进。using System;class Program{ static void Main() { Console.WriteLine("Classic Math.Round in CSharp"); Console.WriteLine(Math.Round(4.4)); // 4 Console.WriteLine(Math.Round(4.5)); // 4 Conso...阅读全文
posted @ 2009-09-18 10:56 周宏伟 阅读(53) | 评论 (0) 编辑
摘要: VS2005中这种方法最简单: DataView dv = dt.DefaultView; dv.Sort = "Num Asc"; DataTable dt2 = dv.ToTable();阅读全文
posted @ 2009-08-21 14:42 周宏伟 阅读(50) | 评论 (0) 编辑
摘要: using System;using System.Collections.Generic;public class Example{public static void Main(){// Create a new dictionary of strings, with string keys.//Dictionary<string, string> openWith =new Di...阅读全文
posted @ 2009-07-30 13:16 周宏伟 阅读(2051) | 评论 (0) 编辑
摘要: ASP.NET Configuration API 提供了加密、解密web.config中的配置片段(sections)支持。这为您保护隐私信息(如密码)提供了极大的便利。这篇文章中,我们将讨论如何加密、解密web.config中的sections。  有两种方法加密配置片段(sections),微软提供了两个providers:DPAPI(Windows Data Protection API)...阅读全文
posted @ 2009-07-27 13:53 周宏伟 阅读(140) | 评论 (0) 编辑
摘要: 命名空间:System.DiagnosticsStopwatch 实例可以测量一个时间间隔的运行时间,也可以测量多个时间间隔的总运行时间。在典型的 Stopwatch 方案中,先调用 Start 方法,然后调用 Stop 方法,最后使用 Elapsed 属性检查运行时间。Stopwatch 实例或者在运行,或者已停止;使用 IsRunning 可以确定 Stopwatch 的当前状态。使用 Sta...阅读全文
posted @ 2009-07-22 11:03 周宏伟 阅读(17409) | 评论 (2) 编辑
摘要: SharePonit Team Service”,它是一种服务器软件,功能是给公司员工提供一个共同的共享信息与文件的环境,新产品现在的名称是Windows SharePoint Services。SPS将分散的信息统一起来,便于就文档、项目和其他工作进行协作,并根据用户的功能组和组织角色呈现特定应用程序和自定义内容。从SharePoint Team Blog了解的最新消息, 微软正式将...阅读全文
posted @ 2009-07-21 13:14 周宏伟 阅读(58) | 评论 (0) 编辑
摘要: ID 表示控件的服务器端编程的标识符,我们写服务器端的代码,就要用到这个 ID, 通过这个 ID 可以在服务器端对服务器端控件的属性、方法和时间进行编程访问。ClientID 表示由服务器端生成的客户端控件的ID, 经常用于在客户端脚本中访问服务器控件所呈现的 HTML 元素。一般情况下与服务器端的 ID 相同,有时,不能为控件生成唯一的名称,例如,如果 Repeater 空间在它的某个模板中包含...阅读全文
posted @ 2009-07-03 13:31 周宏伟 阅读(120) | 评论 (0) 编辑
摘要: 在多人合作的团队中,我们常用的工具就是Visual SourceSafe了,这里,我采用图解的方法来说明怎么利用sourcesafe来管理一个的多项目的任务的开发。首先我们在我们的服务器上安装好 SourceSafe的管理端。然后我们在我们自己的机器上装好SourceSafe的客户端。接着我们在服务器的 D 盘中创建一个名为“SourceSafeDemo”的文件夹。注意这些...阅读全文
posted @ 2009-06-22 08:22 周宏伟 阅读(151) | 评论 (0) 编辑
摘要: class Stack<T>{ private T[] store; private int size public Stack(){ store = new T[10]; size = 0;}public void Push(T x){ store[size++] = x;}public void T Pop(){ return store[--size];}}Stack<in...阅读全文
posted @ 2009-05-21 08:20 周宏伟 阅读(92) | 评论 (0) 编辑