2012-11-28 146 views
1

我知道你可以通過在AppHostExtensions.cs中的appHost擴展方法中調用RegisterService方法來在運行時註冊服務。很棒。有沒有辦法在運行時取消註冊服務或清除所有服務並重新註冊?如何動態註冊/取消註冊服務

我需要這個,因爲我想擁有一個插件類型結構,其中一個dll可以放在一個文件夾中,並且servicestack在運行時註冊所有的服務。

回答

0

我想出了一個簡單的蠻力方法,適用於我。寧願加載和卸載單個服務,但這種方法可以。

我添加了一個方法,我APPHOST文件

public static void Clear() 
{ 
    Instance = null; 
} 

然後在我想重裝servicestack我的MVC控制器的方法我稱之爲

AppHost.Instance.Dispose(); 
AppHost.Clear(); 
new AppHost().Init(); 

這將重新加載一切,重新初始化可在服務拿起新的插件服務DLL的