Example #1
0
 protected void Application_Start()
 {
     AreaRegistration.RegisterAllAreas();
     RouteConfig.RegisterRoutes(RouteTable.Routes);
     BundleConfig.RegisterBundles(BundleTable.Bundles);
     BundleTable.EnableOptimizations = false;
     log4net.Config.XmlConfigurator.Configure();                //×¢²álog4net
     AutoMapperConfig.Config();                                 //×¢²áAutoMapper
     AutoFacConfig.MyAutoFacConfig();                           //×¢²áAutoFac
     FilterConFig.RegisterGlobalFilters(GlobalFilters.Filters); //×¢²á¹ýÂËÆ÷
     #region Log4net
     ThreadPool.QueueUserWorkItem(o =>
     {
         while (true)                                                            //ËÀÑ­»·£¬´úÂëÒ»Ö±×ß
         {
             if (MyErrorFilterAttribute.ExceptionQueue.Count > 0)                //Åж϶ÓÁÐÀïÊÇ·ñÓÐÊý¾Ý
             {
                 Exception ex = MyErrorFilterAttribute.ExceptionQueue.Dequeue(); //³ö¶Ó
                 if (ex != null)
                 {
                     ILog logger = LogManager.GetLogger("testError");
                     logger.Error(ex.ToString()); //½«Òì³£ÐÅϢдÈëLog4NetÖÐ
                 }
                 else
                 {
                     Thread.Sleep(3000);//Ïß³ÌÐÝÃß3000ºÁÃë
                 }
             }
             else
             {
                 Thread.Sleep(3000);////Ïß³ÌÐÝÃß3000ºÁÃë
             }
         }
     });
     #endregion
 }