HttpApplication在处理每个请求时触发的事件

摘要: 标题描述BeginRequestHttp管道开始处理请求时,会触发BeginRequest事件AuthenticateRequest,PostAuthenticateRequest安全模块对请求进行身份验证AuthorizeRequest,PostAuthorizeRequest安全模块对请求进行授权ResolveRequestCache,PostResolveRequestCache缓存模块利用缓存内容对请求进行直接相应PostMapRequestHandler对于访问不同的资源类型,匹配不同的HttpHandler进行处理AcquireRequestState,PostAcquireReq 阅读全文
posted @ 2012-12-26 14:22 萧然 阅读(479) 评论(0) 推荐(0) 编辑

asp.net 4.0 has not been registered on the web server解决办法

摘要: 在Win7环境允许2010碰到这种情况时解决办法如下运行->cmdC:\Users\Administrator>cd C:\Windows\Microsoft.NET\Framework\v4.0.30319C:\Windows\Microsoft.NET\Framework\v4.0.30319>aspnet_regiis.exe -i开始安装 ASP.NET (4.0.30319)。................ASP.NET (4.0.30319)安装完毕。C:\Windows\Microsoft.NET\Framework\v4.0.30319> 阅读全文
posted @ 2012-11-30 14:03 萧然 阅读(2504) 评论(1) 推荐(0) 编辑

Emit学习-基础篇-OpCodes说明(转载)

摘要: 名称说明Add将两个值相加并将结果推送到计算堆栈上。Add_Ovf将两个整数相加,执行溢出检查,并且将结果推送到计算堆栈上。Add_Ovf_Un将两个无符号整数值相加,执行溢出检查,并且将结果推送到计算堆栈上。And计算两个值的按位“与”并将结果推送到计算堆栈上。Arglist返回指向当前方法的参数列表的非托管指针。Beq如果两个值相等,则将控制转移到目标指令。Beq_S如果两个值相等,则将控制转移到目标指令(短格式)。Bge如果第一个值大于或等于第二个值,则将控制转移到目标指令。Bge_S如果第一个值大于或等于第二个值,则将控制转移到目标指令(短格式)。Bge_Un当比较无符号整数值或不可排 阅读全文
posted @ 2012-11-19 10:17 萧然 阅读(344) 评论(0) 推荐(0) 编辑

线程池缺点

摘要: 1.适用于生存周期较短的的任务,不适用于又长又大的任务。2.线程池所有线程都处于多线程单元中,如果想把线程放到单线程单元中,线程池就废掉了。3.如果想标识线程的各个状态,比如启动线程,终止线程,那么线程池就不能完成这些工作。4.不能对于线程池中任务设置优先级。5.对于任意给定的应用程序域,只能允许一个线程池与之对应。 阅读全文
posted @ 2012-08-24 14:16 萧然 阅读(2567) 评论(0) 推荐(1) 编辑

线程池

摘要: 线程池管理是指多线程应用程序初始化过程中创建多线程集合,当需要线程时,为新任务重用这些线程而不是创建新的线程。而这个过程中的线程数量大概是固定的,这取决于内存量和应用程序的需要。线程池中的每个线程都分配一个任务,当执行完任务后将返回线程池中等待下一次分派。 阅读全文
posted @ 2012-08-24 13:47 萧然 阅读(230) 评论(0) 推荐(0) 编辑

xUnit.net:下一代单元测试框架?

摘要: NUnit的创造者Jim Newkirk公布了一个新的单元测试框架,叫做xUnit.net。这个以NUnit接班人自许的新框架打算消除NUnit的错误和缺点,并打算在框架中加入一些最佳实践和扩展能力。Jim Newkirk和Brad Wilson这两位xUnit.net的创造者,从NUnit和其他单元测试框架的经验中总结出来以下改进:为每个测试方法产生一个对象实例取消了[SetUp]和[TearDown]取消了[ExpectedException]类似于Aspect的功能减少了自定义属性(Attribute)的数目采用泛型匿名委托可扩展的断言可扩展的测试方法可扩展的测试类xUnit.net减少 阅读全文
posted @ 2012-07-03 11:38 萧然 阅读(523) 评论(0) 推荐(0) 编辑

反射

摘要: 通过System.Reflection命名空间中的类和GetTypes(),来获取已经加载的程序集中和其中定义的类型的信息。也可以在运行时,通过反射动态创建类型实例,以及访问这些类型实例和方法。 阅读全文
posted @ 2012-05-27 18:22 萧然 阅读(205) 评论(0) 推荐(0) 编辑

.net面试题收集

摘要: 1.什么是CLR公共语言运行时(Comman language Runtime),是一个可由多种编程语言使用的“运行时”。CLR的核心功能:程序集加载,异常处理,线程同步,内存管理等可由CLR的所有语言使用.2.什么是ILIntermediate language中间语言,.net程序在经过编译后就成为IL代码。运行时CLR将IL语言编译成CPU能识别的CRU指令。IL也可以叫做托管代码,IL可以访问CLR所提供的所有功能。3.什么是JIT,它是如何工作的?即时编译器,由CLR调用,负责将IL语言编译成本地CPU指令。工作原理:当程序被第一次调用的时候,CLR会指向包含在CLR内部定义的特殊函 阅读全文
posted @ 2012-05-27 17:57 萧然 阅读(1572) 评论(0) 推荐(1) 编辑

委托是什么?匿名方法是什么?在C# 3.0中,Lambda表达式是什么?扩展方法是什么?LINQ是什么?您觉得C# 3.0中还有哪些重要的特性,它们带来了什么优势?BCL中哪些类库和这些特性有关?您平时最常用哪些

摘要: 委托是什么:MSND:委托是一种引用方法的类型,太抽象了这定义,看不懂我的理解是:委托就是对于一组方法的抽象,代表一组方法的共同特征。匿名方法是什么?匿名方法是指将一段代码块作为委托参数传递给另外一个方法中。匿名方法能访问方法中的变量和类中的成员。使用匿名方法,则不必创建当独的方法,因此减少了实例化委托所需的编码开销。lamdba表达式是什么?“Lambda 表达式”是一个匿名函数,它可以包含表达式和语句,并且可用于创建委托或表达式树类型。所有 Lambda 表达式都使用 Lambda 运算符=>,该运算符读为“goes to”。该 Lambda 运算符的左边是输入参数(如果有),右边包 阅读全文
posted @ 2012-05-27 17:56 萧然 阅读(708) 评论(0) 推荐(0) 编辑

敏捷开发原则

摘要: 1.我们最优先要做的是通过尽早地、持续的交付有价值的软件来满足客户需要。2.我们欢迎需求的变化,即使在项目后期,敏捷过程能够驾驭变化,为客户创造竞争优势。3.经常交互可以工作的软件,从几个星期到几个月,时间越短越好。4.在整个项目开发期间,业务人员和开发人员必须朝夕相处在一起。5.依靠斗志昂扬的人构建项目,给他们提供所需的环境和支持,并信任他们能够完成任务。6.在团队内部,最有效率的信息传达方式,就是面对面的交流。7.可以工作的软件是进度主要的度量标准。8.敏捷过程提倡可持续开发。出资人、开发者和用户应该总是保持稳定的开发速度。9.对卓越技术和良好设计的追求,有助于提高敏捷性。10.简单--尽 阅读全文
posted @ 2012-04-06 08:57 萧然 阅读(247) 评论(0) 推荐(0) 编辑