/// <summary> /// 反序列化数据 /// </summary> /// <param name="reader"></param> /// <param name="context"></param> public override void DeserializeOwnedData(Serialization.SerializationReader reader, object context) { base.DeserializeOwnedData(reader, context); ServiceClassName = reader.ReadOptimizedString(); MethodName = reader.ReadOptimizedString(); Parameters = reader.ReadOptimizedObjectArray(); }
/// <summary> /// 将byte[]反序列化DataTable /// </summary> /// <param name="ListData"></param> /// <returns></returns> public List <T> Deserialize <T>(byte[] ListData) where T : DataObject, new() { if (ListData == null) { return(null); } List <T> DataList = new List <T>(); using (Serialization.SerializationReader sr = new Serialization.SerializationReader(ListData)) { Dictionary <string, int> Fields = new Dictionary <string, int>(); BuildFieldDict(sr, Fields); while (sr.BytesRemaining != 0) { T dataObject = new T(); dataObject.Fields = Fields; dataObject.Data = sr.ReadOptimizedObjectArray(); DataList.Add(dataObject); } } return(DataList); }