Forums - C# Corner

Forum guidelines
John Jiang

John Jiang

  • 895
  • 510
  • 154.4k

Accessing remote SQL server by .net remoting(TCP)

Mar 27 2008 11:45 AM

Accessing remote SQL server by remoting(TCP)

Introduction
In this sample describes how to build a distribution application which accesses MS SqlServer2000 on remoting service.

using the code

Server

using System;
using System.Data;
using System.Data.SqlClient;

namespace www.treaple.com
{
        public class Hello : System.MarshalByRefObject
        {
                public Hello()
                {
                        Console.WriteLine("Hello actived");
                }

                ~Hello()
                {
            Console.WriteLine("Hello destroyed");
                }

                public DataSet GetData()
                {
                        string conn = "Initial Catalog=Northwind;Data Source=localhost;Integrated Security=SSPI";
                    //new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["strconn"]);
                        SqlDataAdapter da=new SqlDataAdapter("select * from Products",conn);
                        DataSet ds=new DataSet();
                        da.Fill(ds);
                        return ds;
                }
        }
}

Client

using System;
using System.Runtime.Remoting;
using System.Runtime.Remoting.Channels;
using System.Runtime.Remoting.Channels.Tcp;
using System.Data;

namespace www.treaple.com
{
        public class Client
        {
                [STAThread]
                public static void Main(string [] args)
                {
                        //TcpChannel chan = new TcpChannel();
                        ChannelServices.RegisterChannel(new TcpClientChannel());
                        Hello obj = (Hello)Activator.GetObject(typeof(Hello),"tcp://localhost:8085/Hi");
                        DataTable dt=obj.GetData().Tables[0];
                        foreach(DataRow dr in dt.Rows)
                        {
                                Console.WriteLine(dr["ProductID"]+" "+dr["ProductName"]);
                        }
                        //if (obj == null) System.Console.WriteLine("Could not find server");
                        //else Console.WriteLine(obj.Greeting("kk"));
                        //else Console.WriteLine(obj.HelloMethod("John"));

                }
        }
}
interface:

using System;

namespace www.treaple.com{
    public interface IHello {
        String HelloMethod(String name);
    }

    public class HelloServer : MarshalByRefObject, IHello {
        public HelloServer() {
            Console.WriteLine("HelloServer actived");
        }

        public String HelloMethod(String name) {
            Console.WriteLine("Hello.HelloMethod : {0}", name);
            return "hello," + name;
        }
    }
}
Note:
     If you have any questions about this sample or want to download the source code of  it.please visit

File APIs for .NET
Aspose are the market leader of .NET APIs for file business formats – natively work with DOCX, XLSX, PPT, PDF, MSG, MPP, images formats and many more!