2010-05-03 38 views
0

我有一個服務器應用程序,它可以監視和監視大約8個獨立的進程,從不同的系統收集數據。服務器應用程序然後對聚合數據運行一些計算並將其存儲在數據庫中。簡單的東西。使用WCF公開底層進程

我現在有一個要求,修改過程,以便它不再保存數據到數據庫,而是直接暴露給客戶通過WCF。

這很酷,我已經使用了WCF一點點,但由於某種原因我掙扎了一下。

基本上我的計劃是主持我的應用程序中的WCF服務,並調用重定向到我現有的應用程序的內部,但我可以弄清楚如何做到這一點,而不需要WCF類來封裝現有的應用程序。

我想讓服務進入我當前的應用程序,而不是成爲它。

有什麼建議嗎?

+0

我需要這樣做的一個原因是,雖然wcf服務可能會或可能不會活動,但我仍然需要在單獨的線程後臺收集數據。 – Steven 2010-05-03 23:29:06

回答

0
MyService service =new MyService(); 
service.EventA += EventHandeler(); 
new ServiceHost(service).Open(); 

WCF允許您將實例傳遞給服務主機!

1

我建議你不要改變什麼不壞。

繼續將數據存儲到數據庫中。

然後通過WCF服務暴露數據庫中的數據。

+0

不幸的是它比這更復雜一點。該服務將允許人們輸入附加信息,然後將其輸入到計算中,並且結果需要實時,沒有db記錄延遲。 – Steven 2010-05-03 23:57:28

+0

@Steven:請用這些信息更新您的原始問題。它有很大的不同。 – 2010-05-04 00:41:48