所以我有基本的UDP服务器,我已经实现了一些事情,比如恢复字节数组的确切方式是由客户端发送的(如果它是无序检索的)。 Bassicaly,我有客户端,服务器和共享类库,类型,对象可以从客户端发送到服务器,反之亦然。所以现在我想出了序列化一些对象并发送到服务器/客户端的想法。但是我需要知道接收了什么类型的对象来正确地反序列化它。为解决这个问题,我想到了两个想法:
那么任何想法,如何实现这个?如果我设法避免反射,那将是完美的,因为它很慢(如果它运行得更快,我不关心巨大的switch语句)
答案 0 :(得分:0)
只需将对象类型作为对象数据的一部分,然后使用完全相同的逻辑发送它们。不要试图在网络级别单独处理它们。
答案 1 :(得分:0)
我今天就这样做了我正在研究的原型。我这样定义了我的消息流:
前4个字节:程序集限定类型名称的长度为Int32。
接下来的n个字节(其中n由前4个字节给出):类型的程序集限定名称。
其余信息:序列化对象
它就像一个魅力。