代码之家  ›  专栏  ›  技术社区  ›  Cédric Boivin

如果存储库中的文件发生更改,应用程序池会自动重新启动

  •  1
  • Cédric Boivin  · 技术社区  · 17 年前

    为什么当我们在IIS 7.0或Cassini中的网站下创建新文件夹时,应用程序会自动重新启动?

    this post

    2 回复  |  直到 9 年前
        1
  •  2
  •   Cédric Boivin    17 年前

    我找到了解决办法。

    the link

    将此代码放在global.asax的应用程序开头

    PropertyInfo p = typeof(HttpRuntime).GetProperty("FileChangesMonitor", 
                    BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Static); 
    
                object o = p.GetValue(null, null); 
    
                FieldInfo f = o.GetType().GetField("_dirMonSubdirs", 
                    BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.IgnoreCase); 
    
                object monitor = f.GetValue(o); 
    
                MethodInfo m = monitor.GetType().GetMethod("StopMonitoring", 
                    BindingFlags.Instance | BindingFlags.NonPublic); 
    
                m.Invoke(monitor, new object[] { }); 
    
        2
  •  1
  •   sebagomez    17 年前

    我也遇到了同样的问题,所以我决定不在我的web应用程序的根目录上写入文件/文件夹。 AspNetCompiler 将msbuild任务添加到您的网站,并在false中显示可更新。