摘要: 函数中定义的局部变量在函数作用域结束时消失。如果想使局部变量的值在程序的整个生命周期里仍然存在,可以将函数的局部变量定义为static。static变量的初始化只在函数第一次调用时执行,函数调用之间变量的值保持不变。 与全局变量不同的是,static变量的优点是在函数范围之外,它是不可用的。下面的代码中,i的作用域只在Func函数内,但是生命周期是整个应用程序内。 void Func(){ ... 阅读全文
posted @ 2012-09-15 22:48 HelloWorld.Michael 阅读(491) 评论(0) 推荐(0) 编辑
摘要: Helper method Description Ajax.ActionLink Creates a hyperlink to a controller action that fires an Ajax request when clicked ... 阅读全文
posted @ 2012-09-07 18:35 HelloWorld.Michael 阅读(423) 评论(0) 推荐(0) 编辑
摘要: AppDomain的功能: 一个AppDomain中的代码创建的对象不能由另一个AppDomain中的代码直接访问。只能使用“按引用封送”(marshal-by-reference)或者“按值封送”(marshal-by-value)的语意 AppDomain可以卸载。CLR不支持从AppDomain中卸载一个程序集,但可以卸载一个AppDomain,从而卸载当前包含在该AppDo... 阅读全文
posted @ 2012-09-05 23:42 HelloWorld.Michael 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 垃圾回收算法: 第一阶段:垃圾回收的第一阶段是标记(marking)。在这个阶段中,垃圾回收器杨喆线程栈上行以检查所有的根。如果发现了一个根引用了一个对象,就在对象的“同步块索引字段”上开启标记。检查好所有的根之后,堆中将包含一组已标记和未标记的对象。已标记的对象是通过应用程序的代码可达的对象,而未标记的对象是不可达的。不可达的被认为是垃圾。 第二阶段:垃圾回收的第二阶段是压缩(compact... 阅读全文
posted @ 2012-09-03 23:45 HelloWorld.Michael 阅读(457) 评论(0) 推荐(0) 编辑
摘要: using System;using System.Runtime.Serialization;using System.Security.Permissions;namespace GenericException{ [Serializable] public sealed class Exception<TExceptionArgs> : Exception, ISerializa... 阅读全文
posted @ 2012-08-22 23:24 HelloWorld.Michael 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 在try块中的代码(或者从try块调用的任何方法)抛出异常,CLR将搜索捕捉类型与抛出的异常相同(或是它的基类)的catch块。如果没有任何捕捉类型与抛出的异常匹配,CLR会去调用栈的更高一层搜索一个异常匹配的捕捉类型。如果到了调用栈顶部,还是没有找到具有匹配捕捉类型的一个catch块,就会发生一个未处理的异常。 一旦CLR找到一个具有匹配捕捉类型的catch块,就会执行内层所有的finally... 阅读全文
posted @ 2012-08-22 23:21 HelloWorld.Michael 阅读(103) 评论(0) 推荐(0) 编辑
摘要: [ComVisible(true)] [Serializable] public enum StringComparison { CurrentCulture, CurrentCultureIgnoreCase, InvariantCulture, InvariantCultureIgnoreCase, ... 阅读全文
posted @ 2012-08-22 21:04 HelloWorld.Michael 阅读(772) 评论(0) 推荐(0) 编辑
摘要: Server-side validation Server-side validation should be done whether we validate on the client or not. Users could disable JavaScript or do something unexpected to bypass client-side validation, and ... 阅读全文
posted @ 2012-08-20 17:22 HelloWorld.Michael 阅读(479) 评论(0) 推荐(0) 编辑
摘要: 主要约束:主要约束可以是一个引用类型,标识了一个没有密封的类。指定一个引用类型约束时,相当于向编译器承诺:一个指定类型的实参要么是与约束类型相同的类型,要么是从约束类型派生的一个类型。如果一个类型参数没有指定主要约束,就默认认为System.Object。有两个特殊的主要约束:class和struct。其中class想编译器承诺一个指定的类型实参是引用类型 internal sealed ... 阅读全文
posted @ 2012-08-15 22:44 HelloWorld.Michael 阅读(356) 评论(0) 推荐(0) 编辑
摘要: 泛型委托:委托实际只是提供了4个方法的一个类定义。这4个方法包括:一个构造器、一个Invoke方法、一个BeginInvoke方法和一个EndInvoke方法。如果定义的一个委托类型指定了类型参数,编译器会定义委托类的方法,用指定的类型参数替换方法的参数类型和返回值类型 利用逆变或者协变,可以将泛型委托类的一个变量转型为同一个委托类型的另一个变量,后者的泛型参数类型不同 不变量(invaria... 阅读全文
posted @ 2012-08-15 22:04 HelloWorld.Michael 阅读(422) 评论(0) 推荐(0) 编辑