如何以编程方式重新启动MVC4项目

4

我需要以编程方式重新启动我的mvc4 Web应用程序。但是System.Web.HttpRuntime.UnloadAppDomain()不起作用。

什么是重启asp.net mvc应用程序的最佳方法?请注意,更改web.config内容或文件夹名称并不能解决我的问题。


1
为什么 System.Web.HttpRuntime.UnloadAppDomain() 对你不起作用? - Darin Dimitrov
2
通过在IIS中重新启动网站。您是否希望从MVC应用程序内执行此操作?我可以进一步询问为什么您必须重新启动应用程序? - Mister Epic
我正在使用输出缓存,类似于这样的方式[CustomOutputCache(DurationApplicationKey = "cacheSql", Location = OutputCacheLocation.Server)],因此当管理员面板更改数据库时,应用程序将被重新启动并获取新值。 - Mesut
@Darin Dimitrov,我不知道,但我的管理面板是经典的asp.net,用户界面是mvc4。您也可以查看此链接:http://daron.yondem.com/en/post/d82b6b05-8c59-4136-becd-329156083b75 - Mesut
2个回答

12

这段代码对我起作用了。只需要调用它即可重新加载应用程序。

System.Web.HttpRuntime.UnloadAppDomain();

更多信息

该方法将仅卸载我们的应用程序。如果您只是将此方法放在ASP.NET网页按钮中,那么您就完成了。那么我们的应用程序何时重新加载?实际上,如果单击按钮,它将首先启动我们的方法并卸载应用程序。此外,我们当时所在的网页也将重新加载,因为我们刚刚点击了一个按钮,网页应该刷新。在启动我们的方法后,页面刷新过程将导致我们的应用程序重新加载。


1

重新启动拥有400个站点的整个IIS,只是为了重启一个站点?更好的主意是重新启动计算机。 - Aristos

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接