Reg2V5RspArgs m = null; if (pe.zipFlag == 1)//需要解压 { MemoryStream tmp = new MemoryStream(); using (GZipInputStream upzipStream = new GZipInputStream(body)) { m = Serializer.Deserialize<Reg2V5RspArgs>(upzipStream); } }
大概说一下场景,这是收到一个响应的数据流,然后反序列化出一个对象 Reg2V5RspArgs
但是,不可能只有一种类型.
我们项目是根据响应流中的cmd=12(对应类Reg2V5RspArsg) 这个cmd来区分应该反序列化出哪种类型的.
怎么能实现
Serializer.Deserialize<Reg2V5RspArgs>(upzipStream);
Reg2V5RspArgs,根据不同的,cmd(整型)来动态的反序列化呢?
建立 基类 实现类型继承
要不写个swith语句?