IntroductionIn this sample describes how to build a distribution application which accesses MS SqlServer2000 on remoting service.
using the codeServerusing 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;
}
}
}
Clientusing 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;
}
}
}
If you have any questions about this sample or want to download the source code of it.please visit