首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >套接字上的C# DatacontractSerializer多个根元素

套接字上的C# DatacontractSerializer多个根元素
EN

Stack Overflow用户
提问于 2009-12-07 10:25:08
回答 1查看 585关注 0票数 0

我正在使用Sockets和DataContractSerializer编写一个Sivlerlight聊天应用程序。

我有一个可序列化对象的类层次结构,其中的定义在Silverlight客户端和C#服务器之间共享。

当一个伙伴登录时,他们向服务器发送一条消息,如果他们被验证了,他们会被发送一个确认,然后是几条消息,这些消息告诉他们还有谁在线(以及其他一些消息)。然后客户端在套接字上等待,并准备好退出套接字。然后,它将尝试反序列化结果字节流中的对象。但是,由于服务器已经发送了几条消息,字节流将包含多个元素的xml,并且在反序列化时会抛出多根异常。

使用DatacontractSerializer从套接字反序列化对象流的标准解决方案是什么?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-12-07 13:16:19

我找到了一个解决方案,尽管它看起来有点老生常谈。

因为数据合约序列化程序生成XML,所以我决定在每个对象之后向流中写入一个额外的'\0‘字节。最后,我只需从字节流中获取stream (b => b != 0)来查找对象。到目前为止,这是可行的,但似乎有一种我不知道的边缘情况。

..。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1857451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档