Problems Today


In previous chapters, you learned several options that .NET offers for higher-level network communication. One option is .NET Remoting, which uses an object-oriented approach. With .NET Remoting, .NET objects can be used across application domains, and that also includes using the objects across the network. Using object fidelity has the disadvantage that the types are shared and it's not only hard to use different platforms, but it's also difficult to keep the clients and the servers in contact as new versions of remote objects are developed — new versions of the remote object assemblies must be distributed to the client.

The client system usually needs the assembly of the remote object. The requirement of deriving the remote object class from the base class MarshalByRefObject probably was not the best design decision because it is not possible to derive it from a different class, too. Security was added late with .NET Remoting, but .NET 2.0 now offers security. A really good feature of this technology is its customizability. It is possible to replace channels using other transport protocols, develop different formatters, and extend the call flow by using message sinks.

DCOM is the protocol that is used by Enterprise Services to flow the context across the wire. DCOM is a very fast protocol, but there's no support for extending it with custom interceptors. With DCOM, Microsoft technologies must be available on both the client and the server, and a proxy must be installed on the client system. Enterprise Services makes it easy to use services such as transactions, object pooling, and so forth on the server side. With this technology, attributes are used to define the requirements of a serviced component. Because installation of a client proxy is often not easy to do in a large scale solution, Web services are used as a front-end.

ASP.NET is the technology used today for developing Web services. They not only make it possible to use clients and servers on different platforms, but it is also possible to plan ahead for version changes by defining a good WSDL contract and not breaking existing clients and servers. The issues with ASP.NET Web services are the use of the HTTP protocol (using WSE 2.0 a TCP channel is available, too), that XML serialization with the SOAP protocol is not fast enough with all scenarios, and some extension features are hard to use. Besides a clear contract that's the only shared item between the client and the server, ASP.NET Web services can be easily developed by using attributes. Derivation of a specific base class is not required.




Professional C# 2005
Pro Visual C++ 2005 for C# Developers
ISBN: 1590596080
EAN: 2147483647
Year: 2005
Pages: 351
Authors: Dean C. Wills

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net