remoting引用dll的问题
以下是一个远程对象类的定义:public class ServerObject:MarshalByRefObject
{
public Person GetPersonInfo(string name,string 易做图,int age)
{
Person person = new Person();
person.Name = name;
person.Sex = 易做图;
person.Age = age;
return person;
}
}
这个类只实现了最简单的方法,就是设置一个人的基本信息,并返回一个Person类对象。注意这里返回的Person类。由于这里所传递的Person则是以传值的方式来完成的,而Remoting要求必须是引用的对象,所以必须将Person类序列化。
因此,在Remoting中的远程对象中,如果还要调用或传递某个对象,例如类,或者结构,则该类或结构则必须实现串行化Attribute[SerializableAttribute]:
[Serializable]
public class Person
{
public Person()
{}
private string name;
private string 易做图;
private int age;
public string Name
{
get {return name;}
set {name = value;}
}
public string Sex
{
get {return 易做图;}
set {易做图 = value;}
}
public int Age
{
get {return age;}
set {age = value;}
}
}
将该远程对象以类库的方式编译成Dll。这个Dll将分别放在服务器端和客户端,以添加引用
以上是我在文章中截取的部分
我不太理解,如果系统是B/S结构的,客户端都是浏览器,还要引用dll?
我自己的理解是,如果系统是B/S结构的,那这个dll只需要布署在服务器端就OK了吧?
如果是C/S结构的,是不是还要在客户端布署一次?
小弟很菜,望高手指路! --------------------编程问答-------------------- b/s架构肯定是在服务器端引用,c/s架构可能在客户端也可能在服务器端引用 --------------------编程问答-------------------- 还有一个问题,请大哥回答
remoting客户端的代码一定要加上"ChannelServices.RegisterChannel(new TcpClientChannel(),false);"这句吗?
网上好多例子都在客户端加上了这句,可是我在客户端把这句取掉后,代码也很正常,跟没取掉的运行效果是一样的.
各位大哥能否给小弟解释一下,客户端加这句代码的作用,以及加与不加的区别在哪里? --------------------编程问答-------------------- 请回答下上面的问题...各位大哥 --------------------编程问答-------------------- top~
补充:.NET技术 , ASP.NET