在我的項目中,我有一個服務類。從ServiceHost設置變量
class KLAService : IKLAService
{
CentralLogic centralLogic;
.....
}
使用這個類,我成立了ServiceHost
這樣的:
centralLogic = new CentralLogic();
ServiceHost host = new ServiceHost(typeof(KLAService));
using (host)
{
host.Open();
Application app = new Application();
app.Run(new ConfigurationWPF.MainWindow(centralLogic));
host.Close();
}
,因爲它可能已經變得清晰,我創建了CentralLogic
類的一個實例。這個實例在用戶界面中使用,但也在主機中用於管理我的解決方案中的其他內容。
我現在遇到的問題是在KLAService
-classes(或host
)中設置centralLogic
-變量。我不知道該怎麼做。我已經閱讀了關於Ninject的插件以及如何在服務中注入對象,但這是我的聯盟,我不禁想到有一種簡單的方法。
我怎樣才能達到我最好的目標?
編輯:提出的另一種解決方案是啓動ServiceHost並讓CentralLogic
在那裏創建而不是其他方式。這意味着ServiceHost需要某種構造函數。我不知道最佳做法是什麼,也不知道如何實現。任何幫助表示讚賞。
可能的重複http://stackoverflow.com/questions/2454850/how-do-i-pass-values-to-the-constructor-on-my-wcf-service – haim770