??????????????????ASP.NET?????????

    internal class BuildResultMainCodeAssembly : BuildResultCompiledAssembly 
    { 
        private MethodInfo FindAppInitializeMethod(Type t) 
        { 
            return t.GetMethod("AppInitialize"??  
                BindingFlags.Public | BindingFlags.Static | BindingFlags.IgnoreCase??  
                null?? new Type[0]?? null); 
        }

?????????????????????AppInitialize??????????У?

????1?????????????????????????BindingFlags.Public | BindingFlags.Static

????2???????????????Сд??BindingFlags.IgnoreCase

????3?????????????д????????new Type[0]

????HttpModule?????г??????????

????????HttpModule???????ASP.NET?????б????????????????????????????????????????

    public class InitAppModule : IHttpModule 
    { 
        public void Init(HttpApplication context) 
        { 
             //???Init??????????ε???????????????????ε??á? 
            AppInitializer.Init(); 
        }

???????????????????????????????????????????????????????????????ε????

???????????????e??????????·????д????

    private static readonly object s_lock = new object(); 
    private static bool s_initOK; 
    public void Init(HttpApplication context) 
    { 
        lock( s_lock ) { 
            if( s_initOK == false ) { 
                //??????????????????Ρ? 
                AppInitializer.Init(); 
                s_initOK = true; 
            } 
        } 
    }

??????????????????????????????????

    public class InitAppModule : IHttpModule 
    { 
        static InitAppModule() 
        { 
            AppInitializer.Init(); 
        } 
        public void Init(HttpApplication context) 
        { 
            // ?????????? 
            // ASP.NET????????????????????????????????á? 
        }