在修改web.config的同时如何重启一个asp.net应用有推荐的asp.net应用弹跳方法吗?是HttpRuntime.UnloadAppDomain();这样做的首选方法是什么?如果是这样,你在哪里做这个?在卸载页面或应用程序的其他地方?如果这是.NET2.0或更高版本,您可以添加“App_offline.htm”文件,向服务器发出请求,将其删除,然后向服务器发出另一个请求。只要文件夹中存在app_offline.htm文件,这一系列事件就会强制ASP.NET卸载应用程序。ScottGuthrie的博客文章:http://weblogs.asp.net/scottgu/archive/2005/10/06/426755.aspx从应用程序内部接触web.config是个坏主意,IMO。另外,IMO,拥有一个你修改的文件的想法有点老套。文档明确指出UnloadAppDomain将关闭应用程序:UnloadAppDomain允许以编程方式关闭未使用的应用程序。您应该能够从应用程序中的任何位置进行此调用。请注意,您可能会得到一个SecurityException,因此请确保运行时为您提供了适当的权限(您可能希望将其放入一个库中并调用它,然后在GAC中设置该库,并提供证据以给予它完全信任)。这段代码对我有用。只需将其称为重新加载应用程序即可。System.Web.HttpRuntime.UnloadAppDomain();阅读更多此方法只是卸载我们的应用程序。如果您只是将此方法放在ASP.NETWeb按钮中,您就完成了。那么我们的应用程序什么时候重新加载?事实上,如果点击按钮,它会首先启动我们的方法并卸载应用程序。此时我们正在处理的网页也会重新加载,因为我们只需单击一个按钮即可刷新网页。启动我们的方法后,页面刷新过程也会导致我们的应用程序重新加载。您还可以停止和启动与应用程序关联的应用程序池。您可以通过调用HttpRuntime.ShutdownAppDomain方法来执行此操作(您需要使用反射来调用它,因为它是一个私有静态方法)有关如何在“重启”RESTAPI中使用此方法的示例,请参阅如何使用以编程方式重新启动IIS工作进程(即关闭当前的ASP.NET域)您可以通过在运行时在应用程序目录下创建或重命名文件夹来安全地重新启动Web应用程序。显然,您需要为分配给运行应用程序的用户“修改”Web目录或其下的子目录的权限。http://www.bartlannoeye.be/blog/restarting-a-.net-web-application-without-restarting-iis中提到了该方法在我的例子中,我使用以下代码来完成。修改它以在“可写”子目录上工作如果(dir.Exists){Directory.Move(dir.FullName,dir.FullName+"ed");}else{DirectoryInfodired=newDirectoryInfo(Server.MapPath("restarted"));如果(dired.Exists){Directory.Move(dired.FullName,dir.FullName);}else{Directory.CreateDirectory(dir.FullName);如果你不想停止和启动应用程序池,你可以随时回收它。以上就是C#学习教程:除了修改web.config,如何重启asp.net应用的全部内容分享。如果对大家有用,需要了解更多C#学习教程,希望大家多多关注——本文来自网络收藏,不代表立场,如涉及侵权,请点击右转联系管理员删除。如需转载请注明出处:
