2010-02-07 106 views
5

.net中的com +選項是什麼?是.net遠程或WCF或其他。com +在.net中的替代方案?


兩個問題的答案是正確的,有替代品,甚至我認爲,我們可以使用遠程處理和互聯網服務,實現COM +的功能。或者甚至可以使用com +的wrapper。但是我說的是有什麼東西可以隱藏com +,就像在java中,我們有EJB作爲com +的替代品,在.net和com +中有什麼相似之處?

+0

請您確切地告訴我們您關心的COM +的功能。 – 2010-02-07 14:51:56

回答

0

如果您需要.NET中的COM +服務,Enterprise ServicesSystem.EnterpriseServices namespace中的類型爲託管代碼提供了廣泛的COM +支持。

A(非常)簡要總結:

  • 創建從ServicedComponent
  • 繼承的新類所需的屬性,如ApplicationActivation,交易等裝飾它
  • 簽署強名稱
  • 構建程序集
  • 使用regsvcs向COM +註冊程序集。
+0

這兩個答案都是正確的,即使我認爲我們可以使用遠程和web服務來實現com +的功能,也有其他選擇。或者甚至可以使用com +的wrapper。但是我說的是有什麼東西可以隱藏com +,就像在java中,我們有EJB作爲com +的替代品,在.net和com +中有什麼相似之處? – user268051 2010-02-08 04:19:36

+0

COM +(據我所知)仍然是微軟首選的組件服務器技術。它尚未被棄用。您不能使用遠程處理和Web服務來實現由COM +提供的對象池,分佈式事務,應用程序服務器場和安全功能。重寫COM +的.NET版本將是一項很大的工作,並且不會爲成熟的COM +提供任何明顯的優勢。如果您想在.NET中使用COM +樣式服務,請使用EnterpriseServices。 – Ash 2010-02-08 05:13:27

3

這取決於您在COM +替代品中尋找什麼。正如Ash所述,Enterprise Services允許您使用.NET創建COM +組件。但對於一般的遠程通信,請使用WCF。特別是,二進制綁定(netTcpBinding,netMsmqBinding等)爲企業內部通信提供了高性能通道。

+0

WCF不是.NET中的COM +選項。 COM +遠不僅僅是DCOM,例如。分佈式事務,對象池,安全等。 – Ash 2010-02-08 05:06:04

+0

@Ash:請閱讀我寫的內容。 「這取決於你在COM +替代品中尋找什麼」。我知道COM +中的內容。瞭解OP的哪些部分要取代OP很重要。 – 2010-02-08 05:27:41

+0

@John,根據我的經驗,幾乎沒有使用COM +的現有應用程序可以成功地刪除COM +部分並僅使用WCF替換它。絕大多數將需要EnterpriseServices。我確信*你明白這一點,但這是我從許多其他開發人員那裏聽到的誤解。 – Ash 2010-02-08 07:20:10