Skip to main content

Posts

Showing posts with the label remoting

Remoting, Remote Computing

Remote Computing http://del.icio.us/rss/learnerplates/remoting http://del.icio.us/search/?fr=del_icio_us&p=remoting&type=user There are 2 main ways in .NET to invoke a method and/or create an instance of an object on machine other than the one your 1. Webservices 2. .NET Remoting. 1. Webservices allow the client to communicate with the server be emitting an receiving XML, these XML messages are first wrapped on both the client and server side into SOAP envelopes..NET Remoting on the other hand allows a remote client to invoke a method through Proxy classes. 2. .NET Remoting You can access remote objects in 2 ways, by reference and by value. The first manipulates the actual original object on the server(the objects class must be MarshalByRefObject) , the second a copy of the original object is used which means any changes made will only effect the local copy, copy on the client, of the object (the objects class must be Serializable). The communication between Server and Client i...

dotNET AppDomain and Remote Computing (Remoting)

AppDomain If for some reason you find that you're application cannot load an Type/Assembly at runtime it's usually because assembly lives somewhere different at runtime. For instance the host could do some copying to temporary locations at runtime, this can sometimes cause the references between assemblies to breakdown. So how do you tell the runtime to look somwhere else for the assembly well that's where the AppDomain comes into play. AppDomain refers to the namespace, space allocated in .NET memory/CLR in which your application is allowed to run. It's a security thing which prevents applications from cross communicating with each other. Reasons why you'd want to access the AppDomain can include: Need to manage the AppDomain i.e. delete or add resources from outside the applications namespace. If you wanted to ensure that certain assemblies for example were to be unloaded from another AppDomain at a certain point, you'd have to setup a new AppDomain and someho...