WCF和Remoting消息传输问题

heguo 2007-06-30 10:01:11
我理解的Remoting和WCF消息传输是差不多的,但不知道正不正确,所以在此开帖提问,听听诸位大侠的意见.

现在我的WCF编程中,对象只是简单在DataContractSerialize为xml文件传输,只是序列化实例的私有成员。虽然这样通信也没什么问题,但很多对象有Event或Delegate成员,我该如何处理。delegate成员也一并序列化后传输对远端吗?真不知道事件成员这样传送到远端会发生什么情况?这个事件还有意见吗?还能被正确调用吗?
想了解一下,在Remoting开发的项目中,这样的事件成员字段是怎样处理的?
...全文
2572 38 打赏 收藏 转发到动态 举报
写回复
用AI写文章
38 条回复
切换为时间正序
请发表友善的回复…
发表回复
lujiaxing2007 2008-07-01
  • 打赏
  • 举报
回复
貌似那东西很复杂地说
knowledge_Is_Life 2008-05-01
  • 打赏
  • 举报
回复
不明LZ在说什么
heguo 2008-04-23
  • 打赏
  • 举报
回复
不要试图“用WCF序列化一个对象的全部属性和事件然后在远端执行被序列化的事件”。要先弄明白WCF基于SOA的设计思路……
======================
那么WCF要实现类似回调功能必须声明ServiceContract和CallBack,而Remoting可以透明实现回调吗?


感谢各位的参与,重审了我的帖子发现问题表述不够明确,正因为歧义所以引发了更多相关技术点的讨论,呵呵.
叶子 2008-04-15
  • 打赏
  • 举报
回复
个人觉得Remoting和webservice有点相似!
qltouming 2008-04-15
  • 打赏
  • 举报
回复
WCF学习中,一头雾水,谁建个群吧,这帖中的大家都加入一下,共同学习。搞了两天没啥进展,都要郁闷死了~~
Miracle 2008-04-12
  • 打赏
  • 举报
回复
关于事件、委托的问题,涉及到WCF的service contract和data contract。要传递数据,就要使用data contract,调用方法,就用用service contract。不要试图“用WCF序列化一个对象的全部属性和事件然后在远端执行被序列化的事件”。要先弄明白WCF基于SOA的设计思路……
kingxiekang 2008-04-03
  • 打赏
  • 举报
回复
在WCF里是基于SOAP的,SOAP是是基于XML的,XML是基于文本的;所以必须序列化 ,否则就是不让用;
  • 打赏
  • 举报
回复
基本上,大多数客户端在路由器后边(你如何可靠地访问访问手机或者局域网内的机器?甚至地址都难以获取),Remoting只适合少量客户端访问大服务器。而web上通常是大量客户访问一个硬件不太高级的服务器,所以还是简单点为好。
possible_Y 2008-03-22
  • 打赏
  • 举报
回复
在WCF或.Net Remoting里要绑定(或传递)客户端方法到远程对象(或ServiceContract)的事件或委托上都会对客户端有要求,简单(不准确地但直观)来说是需要客户端暴露一个"服务方法"出去给服务器端,在服务器上callback的时候回去调用客户端的"服务方法",从而导致客户端本地方法的执行, 从而达到事件或委托的效果.

在.net remoting里需要客户端方法的对象也是MarshByRef的, 而在WCF里则对Binding的类型有特殊要求.

但这样的做法只会增加客户端和服务端的耦合,所以非常不建议这样做.
wxg22526451 2008-03-20
  • 打赏
  • 举报
回复
学习帮顶
airwaterland 2008-03-04
  • 打赏
  • 举报
回复
WCF可以实现Remoting.
  • 打赏
  • 举报
回复
http://www.google.cn/search?q=wcf+%E5%9B%9E%E8%B0%83&rls=com.microsoft:zh-cn:IE-SearchBox&ie=UTF-8&oe=UTF-8&sourceid=ie7&rlz=1I7GGLS

不过,服务器总是服务器。对于业务繁忙的服务器,不应该被没多少任务还经常被用户界面死死拖住的客户机拖死。
湖中仙人 2008-02-22
  • 打赏
  • 举报
回复
up
kingxiekang 2008-02-22
  • 打赏
  • 举报
回复
借宝地请教一个WCF的问题、WCF能实现PUSH模式的数据传输吗?
足球中国 2008-02-13
  • 打赏
  • 举报
回复
不太懂过来顶一下.
努力偷懒 2008-02-11
  • 打赏
  • 举报
回复
有没有必要把事件或者其它非属性数据从服务器端传递到客户端?我想,要构建分布式系统,应该传递的只是数据,而非对象,就算是事件,我想,也应该是属于服务器上的事件,和客户端事件根本就是两回事。按lz的思路,我只想问,你是不是想在客户端里面复制一个服务器端出来?
gzlucky 2007-11-29
  • 打赏
  • 举报
回复
WCF不太了解。

我对比过Web Services 与 .Net Remoting

最大的区别是,Web Services只能返回类中的数据属性,方法没办法返回。

.Net Remoting最大的优势是,你可以把一个类中的一部分在后台Server运行,另一部分在本地执行,对于程序开发者而言可以是透明的。他不需要关心Server与Client间是如何通讯(也可以自己定义),如何配合。在使用时,就象调用本地函数一样。
gyc 2007-11-29
  • 打赏
  • 举报
回复
另一个问题,WCF中序列化不知是私有成员, 是使用 DataMember 标记的 成员
gyc 2007-11-27
  • 打赏
  • 举报
回复
代码看到了, 在正常的桌面程序上,经常看到这个

不过,为什么要把事件也序列化呢? 另一端也没有绑定的过程

如果为了引发你的事件,你需要这个类在客户端也存在才可以

heguo 2007-11-26
  • 打赏
  • 举报
回复
代码是这样子滴(随手写,不保证能通过编译):

public class User
{
Public User
{
this.AddressChanged += User_AddressChanged(this,EventArgs.Empty); //这个事件在当前类中绑定了处理方法
}

private void User_AddressChanged(object sender,EventArgs e)
{
Console.WriteLn("User Address Changed"); //测试对象传输到远端后是否可以响应此事件
}

public event EventHandle NameChanged; //这是事个在另的类中绑定了处理函数
private string name;
public string Name
{
get {return name;}
set
{
name = value;
if(NameChanged != null)
NameChanged(this,EventArgs.Empty);
}
}

public event EventHandle AddressChanged;
private string address;
public string Address
{
get {return address;}
set
{
address= value;
if(AddressChanged!= null)
AddressChanged(this,EventArgs.Empty);
}
}

}

public class TestClass
{
public void TestUser
{
User user = new User();
User.NameChanged += User_NameChanged;
}

private void User_NameChanged(object sender,EventArgs e)
{
Console.Writeln("Name changed"); //测试User对象传输到远端后是否可以响应此事件
}
}
加载更多回复(15)
内容简介 出版日期: 2012年4月1日 《WCF全面解析(套装上下册)》由蒋金楠所著,是作者多年潜心研究WCF技术的心血之作,也是这些年来从事WCF开发的经验总结。书如其名,此书涵盖了WCF几乎所有的知识点,并对其底层框架进行了“庖丁解牛”式的剖析,力求将WCF的整个运行机制完整而清晰地呈现在读者面前。 《WCF全面解析(套装上下册)》上册的前四章在对WCF进行总体介绍的基础上,对构成终结点的三要素(地址、绑定和契约)进行了系统说明;随后的两章则着重剖析序列化和消息编码在WCF中的实现;第7、8章讲述了在服务寄宿和操作调用过程中,WCF的服务端和客户端框架分别为我们做了什么;第9、10章将介绍的重点落在实例化、会话和REST服务上面;在最后一章中采用WCF构建了一个具体的电子商务网站VM,它将指导你如何将理论应用于实践。 《WCF全面解析(套装上下册)》的下册主要涉及一些所谓的“高级”话题,主要包括如何在分布式环境中处理异常(第1章);元数据的导入与导出、发布与获取如何实现(第2章);如何利用WCF对事务的支持将分布式事务引入服务(第3章);如何利用并发与限流机制提高服务的吞吐量和可用性(第4章);如何利用可靠会话机制确保消息的“使命必达”(第5章);如何利用队列服务提供离线通信的支持(第6章);第7、8章主要涉及安全的相关内容,包括传输安全、授权与审核;第9章全景展示WCF服务端和客户端的运行时框架,以及在此基础上的所有扩展可能;最后一章为你带来WCF4.0几个独立的新特性。 编辑推荐 《WCF全面解析(套装上下册)》不仅适合尚未接触过WCF,希望尽快入门并进行深入研究的开发人员使用,同样也适合对WCF有一定了解的开发设计人员和架构师阅读。相信不同层次的读者都能从此书中找到自己希望了解的部分。 《WCF全面解析(套装上下册)》的内容不仅适合尚未接触过WCF,希望尽快入门并进行深入研究的开发人员,同样适合对WCF具有一定了解的开发设计人员和架构师。相信不同层次的读者都能从本书中找到自己希望了解的部分。阅读本书的读者需要对.NET,包括对C#和.NET Framework具有一定的了解。如果读者具备了DCOM、Enterprise Library Service、.NET Remoting、Web Service、MSMQ及SOA相关的基础,对阅读此书尽快掌握WCF将大有裨益。 名人推荐我经历了COM时代,一直把Don Box的《COMM本质论》奉为我的指路明灯。能把SOA机理和WCF这种特定厂商实现的技术讲得如《COM本质论》一样完美透彻的,那必属Artech这本经过自己深研、实践而著的心血结晶——《WCF全面解析》。如果你想成为SOA和WCF方面的专家,那么这本书就是你的最好法宝。想想你作为专家而获得的回报,那么你对这本书购买所付出的,简直是太值了。 ——《走出软件作坊》 作者 明源软件CTO 阿朱 首先,金楠是—位工作在一线的优秀的WCF技术人员,这符合我对阅读技术图书的第一个要求和期待。其次,金楠的写作文笔、专业责任也给人以充分信任,这在金楠的文字中读者可以体会。这本《WCF全面解析》全面剖析了构建WCF应用所需要的各方面技术,剥丝抽茧,由浅入深,也是我非常欣赏的技术讲述方式。我相信《WCF全面解析》—书是搞WCF朋友的案头必备。 ——祝成科技与Boolan.com创始人.NET技术专家 李建忠 知识全面、论述准确、逻辑严密是本书的特点。这是一本各层次开发人员都可以从中受益的书:对于初、中级开发人员,它可以帮助你获得WCF全方位的知识,系统地梳理WCF的知识结构,提升动手实践能力;对于高级开发人员,它既可以有效弥补你WCF相关知识中的盲点,又可以让你在自己熟悉的知识点上领略作者的看法和理解。 ——资深架构师 曲春雨 作者简介蒋金楠,网名Artech,现就职于某知名软件公司担任高级软件顾问。连续5届微软MVP(最有价值专家),同时也是少数的双料MVP(Solutions Architecture+Connected System)之一。国内较早接触WCF的人之一,2007年2月起在个人博客(http://www.cnblogs.com/artech)上发表超过两百篇深入介绍WCF的文章,成为了目前国内WCF在线资料的主要来源。
WCF全面解析(套装上下册)》由蒋金楠所著,是作者多年潜心研究WCF技术的心血之作,也是这些年来从事WCF开发的经验总结。书如其名,此书涵盖了WCF几乎所有的知识点,并对其底层框架进行了“庖丁解牛”式的剖析,力求将WCF的整个运行机制完整而清晰地呈现在读者面前。 《WCF全面解析(套装上下册)》上册的前四章在对WCF进行总体介绍的基础上,对构成终结点的三要素(地址、绑定和契约)进行了系统说明;随后的两章则着重剖析序列化和消息编码在WCF中的实现;第7、8章讲述了在服务寄宿和操作调用过程中,WCF的服务端和客户端框架分别为我们做了什么;第9、10章将介绍的重点落在实例化、会话和REST服务上面;在最后一章中采用WCF构建了一个具体的电子商务网站VM,它将指导你如何将理论应用于实践。 《WCF全面解析(套装上下册)》的下册主要涉及一些所谓的“高级”话题,主要包括如何在分布式环境中处理异常(第1章);元数据的导入与导出、发布与获取如何实现(第2章);如何利用WCF对事务的支持将分布式事务引入服务(第3章);如何利用并发与限流机制提高服务的吞吐量和可用性(第4章);如何利用可靠会话机制确保消息的“使命必达”(第5章);如何利用队列服务提供离线通信的支持(第6章);第7、8章主要涉及安全的相关内容,包括传输安全、授权与审核;第9章全景展示WCF服务端和客户端的运行时框架,以及在此基础上的所有扩展可能;最后一章为你带来WCF4.0几个独立的新特性。 编辑推荐 《WCF全面解析(套装上下册)》不仅适合尚未接触过WCF,希望尽快入门并进行深入研究的开发人员使用,同样也适合对WCF有一定了解的开发设计人员和架构师阅读。相信不同层次的读者都能从此书中找到自己希望了解的部分。 《WCF全面解析(套装上下册)》的内容不仅适合尚未接触过WCF,希望尽快入门并进行深入研究的开发人员,同样适合对WCF具有一定了解的开发设计人员和架构师。相信不同层次的读者都能从本书中找到自己希望了解的部分。阅读本书的读者需要对.NET,包括对C#和.NET Framework具有一定的了解。如果读者具备了DCOM、Enterprise Library Service、.NET Remoting、Web Service、MSMQ及SOA相关的基础,对阅读此书尽快掌握WCF将大有裨益。 名人推荐我经历了COM时代,一直把Don Box的《COMM本质论》奉为我的指路明灯。能把SOA机理和WCF这种特定厂商实现的技术讲得如《COM本质论》一样完美透彻的,那必属Artech这本经过自己深研、实践而著的心血结晶——《WCF全面解析》。如果你想成为SOA和WCF方面的专家,那么这本书就是你的最好法宝。想想你作为专家而获得的回报,那么你对这本书购买所付出的,简直是太值了。 ——《走出软件作坊》 作者 明源软件CTO 阿朱 首先,金楠是—位工作在一线的优秀的WCF技术人员,这符合我对阅读技术图书的第一个要求和期待。其次,金楠的写作文笔、专业责任也给人以充分信任,这在金楠的文字中读者可以体会。这本《WCF全面解析》全面剖析了构建WCF应用所需要的各方面技术,剥丝抽茧,由浅入深,也是我非常欣赏的技术讲述方式。我相信《WCF全面解析》—书是搞WCF朋友的案头必备。 ——祝成科技与Boolan.com创始人.NET技术专家 李建忠 知识全面、论述准确、逻辑严密是本书的特点。这是一本各层次开发人员都可以从中受益的书:对于初、中级开发人员,它可以帮助你获得WCF全方位的知识,系统地梳理WCF的知识结构,提升动手实践能力;对于高级开发人员,它既可以有效弥补你WCF相关知识中的盲点,又可以让你在自己熟悉的知识点上领略作者的看法和理解。 ——资深架构师 曲春雨 作者简介蒋金楠,网名Artech,现就职于某知名软件公司担任高级软件顾问。连续5届微软MVP(最有价值专家),同时也是少数的双料MVP(Solutions Architecture+Connected System)之一。国内较早接触WCF的人之一,2007年2月起在个人博客(http://www.cnblogs.com/artech)上发表超过两百篇深入介绍WCF的文章,成为了目前国内WCF在线资料的主要来源。

13,347

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET技术前瞻
社区管理员
  • .NET技术前瞻社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧