Exemplo n.º 1
0
        /// <summary>
        /// 序列化对象
        /// 序列化顺序
        /// 1、类型名
        /// 2、对象的各个属性
        /// </summary>
        /// <param name="serializationStream">流</param>
        /// <param name="graph">对象</param>
        public void Serialize(Stream serializationStream, object graph)
        {
            ILibSerializable     libSerializable = (ILibSerializable)graph;
            LibSerializationInfo sInfo           = new LibSerializationInfo(serializationStream, graph);

            libSerializable.WriteObjectData(sInfo);
        }
Exemplo n.º 2
0
        public void WriteObject(object value)
        {
            WriteType(value);
            ILibSerializable serializer = (ILibSerializable)value;

            serializer.WriteObjectData(this);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 反序列化
        /// </summary>
        /// <param name="serializationStream"></param>
        /// <returns></returns>
        public object Deserialize(Stream serializationStream)
        {
            LibSerializationInfo sInfo       = new LibSerializationInfo(serializationStream);
            ILibSerializable     deserialize = sInfo.GetObject();

            deserialize.ReadObjectData(sInfo);
            return(deserialize);
        }
Exemplo n.º 4
0
        public object ReadObject()
        {
            Type             t           = ReadType();
            object           obj         = Activator.CreateInstance(t);
            ILibSerializable deserialize = (ILibSerializable)obj;

            deserialize.ReadObjectData(this);
            return(deserialize);
        }