views:

68

answers:

3

What is the com+ alternative in .net? Is it .net remoting or WCF or something else.

A: 

If you require the services of COM+ in .NET, Enterprise Services and the types in the System.EnterpriseServices namespace provide extensive COM+ support for managed code.

A (very) simplified summary:

  • Create a new class that inherits from ServicedComponent
  • Decorate it with the required attributes such as ApplicationActivation, Transaction etc.
  • Sign it with a strong name
  • Build the assembly
  • Register the assembly with COM+, using regsvcs.
Ash
Both the answers are correct that there are alternatives even I think we can use remoting and webservice to achieve functionalities of com+. or even can use wrapper for com+ too.But I am talking about is there something that could depricate com+ , like in java we have EJB as an alternative of com+, is there something smilar in .net against com+ ?
COM+ (As far as I know) is still Microsoft's component server technology of choice. It has not been deprecated. You cannot use remoting and web services to achieve object-pooling, distributed transactions, application server farms and security features provided by COM+. Rewriting a .NET version of COM+ would be a large effort and would not provide any obvious benefits over the mature COM+ If you want COM+ style services in .NET, use EnterpriseServices.
Ash
+3  A: 

It depends on what you're looking for in a COM+ replacement. As Ash says, Enterprise Services allow you to create COM+ components with .NET. But for general remote communications, use WCF. In particular, the binary bindings (netTcpBinding, netMsmqBinding, etc) provide a high-performance channel for intra-enterprise communication.

John Saunders
WCF isn't a COM+ alternative in .NET. COM+ is far more than just DCOM eg. distributed transactions, object pooling, security etc.
Ash
@Ash: Please read what I wrote. "It depends on what you're looking for in a COM+ replacement". I know what's in COM+. It's important to know which parts of COM+ the OP wants to replace.
John Saunders
@John, In my experience almost no existing application using COM+ could successfully rip out the COM+ part and replace it using WCF only. Vast majority will be needing EnterpriseServices. I'm sure *you* understand this, but this is a misconception I've heard from many other developers.
Ash
@Ash: If the OP had said, "I'm currently using COM+. How do I replace it", then I'd agree. But that may not be what he's asking. Even so, WCF can do transactions;object pooling is rarely necessary; and other COM+ features are simply part of .NET.
John Saunders
@John, "What is the com+ alternative in .net?" it's very clear what the OP is asking, you're splitting hairs.
Ash
@Ash: if he's really looking for the replacement for (all of) COM+, then the answer is, "there is none".
John Saunders
A: 

Both the answers are correct that there are alternatives even I think we can use remoting and webservice to achieve functionalities of com+. or even can use wrapper for com+ too.But I am talking about is there something that could depricate com+ , like in java we have EJB as an alternative of com+, is there something smilar in .net against com+ ?

John Saunders