2014-01-25 142 views
2

我需要以編程方式重新啓動我的mvc4 web應用程序。但System.Web.HttpRuntime.UnloadAppDomain()不起作用。如何以編程方式重新啓動MVC4項目

什麼是重新啓動asp.net mvc應用程序的最佳方法?請注意,更改web.config內容或文件夾名稱不能解決我的問題。

任何方式,幫助將不勝感激。

+1

爲什麼'System.Web.HttpRuntime.UnloadAppDomain()'不適合你? –

+2

通過在IIS中重新啓動網站。你是否希望在你的MVC應用程序中做到這一點?我還可以問爲什麼你必須重新啓動應用程序? –

+0

我正在使用這樣的輸出緩存[CustomOutputCache(DurationApplicationKey =「cacheSql」,Location = OutputCacheLocation.Server)],所以當數據庫從管理面板更改時,應用程序將被重新啓動,並將採取值。 – Mesut

回答

1

編輯 - 在這個問題上的OutputCache看評論後,您可以無效的OutputCache編程,Check this out

如果仍然要重新啓動IIS或應用程序池,那麼你可以按照這些資源 -

+0

重新啓動具有400個站點的完整IIS,以重新啓動一個站點?更好的主意,重新啓動。 – Aristos

+0

@Aristos我更新了我的答案。 – ramiramilu

6

對於我這種代碼工作。只需調用它來重新加載應用程序。

System.Web.HttpRuntime.UnloadAppDomain(); 

More info

這種方法只會卸載我們的應用程序。如果你只是把這個方法放在一個ASP.NET web按鈕中,那麼你完全完成了。那麼我們的應用何時會重新加載?實際上,如果你點擊你的按鈕,它會首先啓動我們的方法和卸載應用程序。進一步在我們在那個時候的網頁上也會被重新加載,因爲我們只是點擊一個按鈕並且網頁應該刷新。啓動我們的方法後,頁面刷新過程也會導致我們的應用程序重新加載。

相關問題