asp.net处理删除网站下文件夹导致iis重启session丢失的问题

1、新建一个类继承 IHttpModule

 1 public class StopAppDomainRestartOnFolderDeleteModule : IHttpModule 
 2 { 
 3     private static bool DisableFCNs = false; 
 4     public void Init(HttpApplication context) 
 5     { 
 6         if (DisableFCNs)
 7             return; 
 8         PropertyInfo p = typeof(HttpRuntime).GetProperty("FileChangesMonitor", BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Static); 
 9         object o = p.GetValue(null, null); 
10         FieldInfo f = o.GetType().GetField("_dirMonSubdirs", BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase); 
11         object monitor = f.GetValue(o); 
12         MethodInfo m = monitor.GetType().GetMethod("StopMonitoring", BindingFlags.Instance | BindingFlags.NonPublic); 
13         m.Invoke(monitor, new object[] { }); 
14         DisableFCNs = true; 
15     } 
16     public void Dispose() 
17     {
18  
19     } 
20 }

2、修改web.config文件

1       <add name="StopAppDomainRestartOnFolderDeleteModule" type="StopAppDomainRestartOnFolderDeleteModule"/>
posted @ 2012-11-13 11:53  Servant  阅读(327)  评论(0编辑  收藏  举报