Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. General Programming
  3. C#
  4. difference between .NET remoting and shared/private assembly?

difference between .NET remoting and shared/private assembly?

Scheduled Pinned Locked Moved C#
csharpdotnetcomsysadmintools
4 Posts 2 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • L Offline
    L Offline
    liyang yu
    wrote on last edited by
    #1

    Just want to have a clear understanding of the following (related) issues: 1. Private/Shared Assembly allows us to have some sort of "binary reuse": for instance, you can create a assembly (either private or shared) which contains some "utility" types, then in another application, you can add a reference to the above assembly and make use of the types in it. Yet you can create another different application still use this same assembly ... we may call these different applications clients, and the utility assembly server. 2. .NET remoting: this architecture allows us to invoke a method on a remote object, again, the remote object can be considered as server, the application who invokes the methods can be view as client. 3. classic COM/DCOM: you can build COM server which has the coclasses, you can also have a client that consume the functions of those coclasses. at run time, the COM runtime (quite like the CLR) will load the COM server so the COM client can have someone to talk to. So, what exactly is the difference among these three??? for example, the private/shared assembly as a server, it in fact lives in the same AppDomain with its client, but in the .NET remoting model, the client and server are for sure not in the same AppDomain, so this model is about crossing the AppDomain boundaries. can someone summarize more differences?

    S 1 Reply Last reply
    0
    • L liyang yu

      Just want to have a clear understanding of the following (related) issues: 1. Private/Shared Assembly allows us to have some sort of "binary reuse": for instance, you can create a assembly (either private or shared) which contains some "utility" types, then in another application, you can add a reference to the above assembly and make use of the types in it. Yet you can create another different application still use this same assembly ... we may call these different applications clients, and the utility assembly server. 2. .NET remoting: this architecture allows us to invoke a method on a remote object, again, the remote object can be considered as server, the application who invokes the methods can be view as client. 3. classic COM/DCOM: you can build COM server which has the coclasses, you can also have a client that consume the functions of those coclasses. at run time, the COM runtime (quite like the CLR) will load the COM server so the COM client can have someone to talk to. So, what exactly is the difference among these three??? for example, the private/shared assembly as a server, it in fact lives in the same AppDomain with its client, but in the .NET remoting model, the client and server are for sure not in the same AppDomain, so this model is about crossing the AppDomain boundaries. can someone summarize more differences?

      S Offline
      S Offline
      Steve Maier
      wrote on last edited by
      #2

      For the .NET Remoting, you can also call into a different machine like with DCOM, but it could also be to the same box too. With .NET Remoting you can specify if you want the communication to use TCP or HTTP, and either binary or SOAP encoding. SOAP encoding is text based so it can slow things down, but can be easier to trace at times. Steve Maier, MCSD MCAD

      L 1 Reply Last reply
      0
      • S Steve Maier

        For the .NET Remoting, you can also call into a different machine like with DCOM, but it could also be to the same box too. With .NET Remoting you can specify if you want the communication to use TCP or HTTP, and either binary or SOAP encoding. SOAP encoding is text based so it can slow things down, but can be easier to trace at times. Steve Maier, MCSD MCAD

        L Offline
        L Offline
        liyang yu
        wrote on last edited by
        #3

        thanks steve, good point. basically, the .NET remoting allows you to customize the whole underlying architecture if you so choose. by the way, I also notice that you have the MCSD and MCAD certs. congratulations!! would you mind telling me which 3 exams you took for the MCAD cert? thanks!

        S 1 Reply Last reply
        0
        • L liyang yu

          thanks steve, good point. basically, the .NET remoting allows you to customize the whole underlying architecture if you so choose. by the way, I also notice that you have the MCSD and MCAD certs. congratulations!! would you mind telling me which 3 exams you took for the MCAD cert? thanks!

          S Offline
          S Offline
          Steve Maier
          wrote on last edited by
          #4

          I have taken : 70-320 XML Web Services with C# 70-315 Web Applications with C# 70-300 Analyzing Requirements and Defining Microsoft .NET Solution Arch. 70-316 Windows®-based Applications with C# Just an elective to go to finish my MCSD.NET. Steve Maier, MCSD MCAD

          1 Reply Last reply
          0
          Reply
          • Reply as topic
          Log in to reply
          • Oldest to Newest
          • Newest to Oldest
          • Most Votes


          • Login

          • Don't have an account? Register

          • Login or register to search.
          • First post
            Last post
          0
          • Categories
          • Recent
          • Tags
          • Popular
          • World
          • Users
          • Groups