我正在創建某種插件系統。目前我使用WinForms
應用程序來加載程序集,使用Assembly.Load
和Activator.CreateInstance
。 WinForms GUI應該只顯示當前加載的程序集(插件)的名稱。在服務器端運行連續的自定義應用程序邏輯。入口點?
庫中存在一個類PluginManager
,它實例化並保存了所有實現者的列表。
但是,我現在想要從Silverlight
應用程序訪問插件列表(僅限它們的名稱)。
我有一個在Visual Studio中創建的Silverlight 4
應用程序。
這增加了兩個項目:
MyProject
(SL 4項目)MyProject.Web
(含其運行.xap文件在.aspx啓動頁)
我需要的是PluginManager
及其實例化的插件不僅在Silverlight頁面請求期間(通過aspx頁面)加載,而且始終加載,即使用戶從不在瀏覽器中打開Silverlight應用程序。我對這個.Web項目的入口點感到困惑。 (在控制檯應用程序中,我會將代碼放入Main方法中,在Loaded事件處理程序的WinForms中,但我不知道該.Web
項目中的「服務」在哪裏啓動)。
這是如何工作的?我應該在哪裏實例化我的PluginManager
? .Web
項目僅在HTTP請求期間短暫運行,還是可以連續運行?
網站或Web應用程序? –
它是作爲一個Silverlight商業應用項目模板製作的,所以VS生成了兩個項目。所以我想這是一個應用程序。不知道,但。我如何檢查? –