Re: C# solution in MTS / MSMQ?

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance





<DIV>&quot;Willy Denoyette [MVP]&quot; &lt;willy.denoyette@xxxxxxxxxx&gt; wrote in message news:%23dQMN45zGHA.4044@xxxxxxxxxxxxxxxxxxxxxxx</DIV>> See inline.

Willy.

"David Browne" <davidbaxterbrowne no potted meat@xxxxxxxxxxx> wrote in
message news:e4Nabr4zGHA.4972@xxxxxxxxxxxxxxxxxxxxxxx
|
|
| <DIV>&quot;Willy Denoyette [MVP]&quot; &lt;willy.denoyette@xxxxxxxxxx&gt;
| wrote in message news:Oo7NTW2zGHA.1300@xxxxxxxxxxxxxxxxxxxxxxx</DIV>>
| > "David Browne" <davidbaxterbrowne no potted meat@xxxxxxxxxxx> wrote in
| > message news:%23VTzQvwzGHA.5048@xxxxxxxxxxxxxxxxxxxxxxx
| > |
| > |
| > | <DIV>&quot;Jon Davis&quot; &lt;jon@xxxxxxxxxxxxxxxxxxxxxxxxxxxxx&gt;
| > wrote
| > | in message news:OFVXVHtzGHA.5072@xxxxxxxxxxxxxxxxxxxxxxx</DIV>> Can a
| > | solution built in C# utilize MSMQ and/or MTS?
| > | >
| > | > If so, does this make the training material I already have on MSMQ
and
| > MTS
| > | > in the context of VB6 an appropriate prerequisite foundation before
| > | > learning how to build C# solutions on MSMQ / MTS, if I already know
| > VB6
| > as
| > | > well as C#?
| > |
| > |
| > | Also be aware that .NET has much less need of the services provided by
| > MSMQ
| > | and COM+ (formerly MTS), than VB6 did. Each of these platform
| > technologies
| > | is still sometimes useful, and there is good support in the .NET
| > framework
| > | for them, but they are no longer the "bread and butter" of enterprise
| > | applications.
| > |
| > | David
| > |
| >
| > Not sure where you get this idea from, what are the alternatives offered
| > by
| > .NET? How would you implement enterprise like applications without
| > resorting
| > to System.EnterpriseServices and System.Messaging (COM+ and MSMQ
| > wrappers)?
| >
| >
|
| Ok. EnterpriseServices (COM+) basically offers a bunch of services to
| applciations:
|
| Object Lifetime Management
| Threading
| Transaction Management
| Distributed Components
|
| You can do all of this in .NET without the help of COM+. The "COM" in
COM+
| should remind you that COM+ is an application server designed to service
an
| earlier generation of components.
|
| .NET features such as
|
| System.Threading

This is not the same thing, COM+ Threading services are attribute based
(just like all COM+ services) little or no threading code to write it's all
taken care of for you.

| System.Transactions
Yep, this is really the only service pulled from COM+, note that both use
MSDTC when escalating to a distributed transaction.


| Windows Communication Foundation (or .NET Remoting and web services)
| .NET's OO functionality (constructors, singletons, thread agility)
|

WCF is not released yet, and Remoting serves other purposes and it requires
.NET at both ends (not to talk about what it lacks), WCF will build on COM+
for some of it's services (at least for V1 of NetFx V3).

| Really make COM+ redundant.
|

Well, I have to disagree,
How about object pooling, component activation and launch support,
security services like "access and activation security control","private
components" "Identity selection" ...,
distributed components,
COM+ partitions with Active Directory Services integration ,
automatic or user controled application recycling,
application control (pausing/disabling),
run as a Windows service,
low memory activation gates,
Debugging features (Process Dump).....?
and this, all attributed, no or little code to write. And don't forget the
reduced management overhead, all component services & attributes can be
controled from native clients and are scriptable.
. . ..


I think the question is not whether COM+ has a number of useful features: it does. Or whether it's hard to use once you understand those features: it isn't. Or whether you should continue to use it for scenarios it handles well or applications that are coded for it: you should.

The issue is whether COM+ is still necessary for enterprise applications. And if it's not necessary, whether a principle of economy might relegate its use to a few scenarios for a majority of developers.

Remember before .NET, you had VB6, a safe and easy but low-functioning language, and C++ a much more capable, but complicated and error-prone language where simple coding errors cause process failure. Producing an enterprise without COM+ in VB6 was nearly impossible, and in C++ it could be very expensive. In either case, COM+ was a necessary technology for building enterprise applications.

In .NET, without using Enterprise Services, you have IIS Web Applications, IIS Web Service Applications and Windows Services. Every .NET developer must understand how to build, deploy and manage these application types. They are necessary. Enterprise applications can be built with just these and the .NET languages and framework. They are sufficient.


David

.



Relevant Pages

  • Re: C# solution in MTS / MSMQ?
    ... |> MSMQ ... How would you implement enterprise like applications without ... Debugging features.....? ... | 6.0 developers are fully accessible when developing in Visual Basic .NET. ...
    (microsoft.public.dotnet.languages.csharp)
  • Re: C# solution in MTS / MSMQ?
    ... | solution built in C# utilize MSMQ and/or MTS? ... How would you implement enterprise like applications without resorting ...
    (microsoft.public.dotnet.languages.csharp)
  • Excellent JAVA consultant available
    ... applications using JAVA/J2EE technologies like JSP, Servlets, EJB, ... DOM, XPATH, Java Bean, IBM MQ Series, JAX-RPC, WSDL, RMI and Web ... Brainbench Certified Java 2 Platform Enterprise Edition J2EE ...
    (rec.music.artists.springsteen)
  • Excellent JAVA consultant available
    ... applications using JAVA/J2EE technologies like JSP, Servlets, EJB, ... DOM, XPATH, Java Bean, IBM MQ Series, JAX-RPC, WSDL, RMI and Web ... Brainbench Certified Java 2 Platform Enterprise Edition J2EE ...
    (alt.politics)
  • Excellent JAVA consultant available
    ... applications using JAVA/J2EE technologies like JSP, Servlets, EJB, ... DOM, XPATH, Java Bean, IBM MQ Series, JAX-RPC, WSDL, RMI and Web ... Brainbench Certified Java 2 Platform Enterprise Edition J2EE ...
    (alt.politics.bush)