Email: Password:       Forgot Password 
    .netCodeSG
A Saarsha Group Online Community for dot net codes group like C#, Asp.NET, VB.NET, Sharepoint, JavaScript, JQuery, Ajax, SQL, WCF, WPF.
 
TECHNOLOGIES:
 

.NET Remoting in a Simple Way

Article:
Viewed:  1172 
Posted On:  26/07/2012 09:18:45 
What is remoting? How we can access remote object from one application to another application? 

Remoting is the process through which we can access any remote object from one application domain to another application domain. 

For creating remote object the class object must be inherited by MarshalByRefObject class.

Application domain  is the runtime environment of application, For MicrosoftWord, domain is MS office, For .NET programme, .NET runtime environment.

 
Terms Used in Remoting

  1. Proxy: To avoid conjunction in networking. Main work is task Distributing.There are two type of proxy.

·         Transparent proxy (There is no physical existence , Created by IIS server)

·         Real Proxy  (Physical Existence)  


                        ChannelChannel provides the medium for transfer data from one location to another location. There  are two types of channel. 

·         TCP(work with Predefined root Connection oriented) 

·         HTTP (No need predefined root) 

  1. Formatters: Change the data in an appropriate format that it can traverse through channels.

    There are two types of formatters

·          Binary

·         SOAP(Simple Object Access Protocol) 

  1. Sink:  Sink is used for security point of view. Before sending the data, the Data will be encrypted. Some additional bit will be added with the data to secure the data. 

    There are two types of sink

·         Envoy sink

·         Server Context Sink

Object Mode On Server: Two Types of Object Mode .

  • SingleCall
  • Singleton

For creating Remoting we have to create 3 applications:

  • class Library (Of which Remote Object will be created)
  • Server Application (Console Application)
  • Client Application (Window Application)

RemoteClass

 

using System;
using System.Collections.Generic;
using System.Text; 

namespace remoteclass
{
    public class xx:MarshalByRefObject
    {
        public int sum(int a, int b)
        {
             return a + b;
        }
    }
}

Remote Server 

using System;
using System.Collections.Generic;
using System.Text;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp; 

namespace remoteserver
{
    class Program
    {
        static void Main(string[] args)
        {
            TcpChannel ch=new TcpChannel(8085);
            ChannelServices.RegisterChannel(ch);
            RemotingConfiguration.RegisterWellKnownServiceType(typeof
                           (remoteclass.xx),"rahul",WellKnownObjectMode.Singleton);
            Console.Write("Sever is  Ready........");
            Console.Read(); 
        }
    }
}  

When user run this Remote Server application. 

1.png


Figure 1: 
 Server Application.


Remote Client 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp; 

namespace remoteclient
{
    public partial class Form1 : Form
    {
        //TcpChannel ch = new TcpChannel();
        remoteclass.xx obj = new remoteclass.xx();
       public Form1()
       {         
           
 InitializeComponent();
       } 

        private void button1_Click(object sender, System.EventArgs e)

        {

            //ChannelServices.RegisterChannel(ch);

            obj = (remoteclass.xx)Activator.GetObject(typeof(remoteclass.xx),

                           "tcp://localhost:8085/rahul");

            int x = Int32.Parse(textBox1.Text);
            int y = Int32.Parse(textBox2.Text);
            textBox3.Text = (obj.sum(x, y)).ToString();
        }       
    }
}

When user run the application.

2Img.png

Figure 2: Client Application.

  Comment:
         HOME   |   Submit Article   |   Contact Us   |   About Us   |   Terms & Condition   |   Advertise With us