研究了数十小时,终于搞清了Asp.net窗体身份验证的来龙去脉
比如我们拉一个Login控件到页面,点一下登录按钮,Asp.net内部发生了什么?
接受一个新的请求时,Asp.net如何通过检查和设置Cookie来标识用户身份(匿名用户和注册用户)?
还有Asp.net的工作流程及一些特定的生命周期(如Page,HttpApplicaion等)
顺便搞清了HttpApplication对象并不一定是一个,最多可以是100个,定制的最多可以是20个,HttpApplication就是由这个工厂加工出来的:internal class HttpApplicationFactory
{
    private string _appFilename;
    private bool _appOnEndCalled;
    private bool _appOnStartCalled;
    private static IHttpHandler _customApplication;
    private MethodInfo[] _eventHandlerMethods;
    private ICollection _fileDependencies;
    private Stack _freeList;
    private bool _inited;
    private const int _maxFreeAppInstances = 100;
    private const int _maxFreeSpecialAppInstances = 20;
终于脑清了,祝大家节日快乐,全家和谐,同事和谐,社会和谐,国家和谐