Пример #1
0
 public long SerializeThenDeserialize_Once_InFile(object data, string FileName, DataDescriptor dataDescriptor)
 {
     using (FileStream stream = new FileStream(FileName, FileMode.Create))
     {
         var serializer = new SharpSerializer(true);
         serializer.Serialize(data, stream);
     }
     using (FileStream stream = new FileStream(FileName, FileMode.Open))
     {
         var serializer       = new SharpSerializer(true);
         var deserializedData = serializer.Deserialize(stream);
         dataDescriptor.CheckDeserializedData(data, deserializedData);
     }
     return(new FileInfo(FileName).Length);
 }
Пример #2
0
        public long SerializeThenDeserialize_Loop_InFile(object data, int loopCount, string FileName, DataDescriptor dataDescriptor)
        {
            using (FileStream stream = new FileStream(FileName, FileMode.Create))
            {
                var serializer = new SharpSerializer(true);

                for (int iLoop = 0; iLoop < loopCount; iLoop++)
                {
                    long position = stream.Position;
                    serializer.Serialize(data, stream);
                    stream.Position = position;
                    var deserializedData = serializer.Deserialize(stream);
                    dataDescriptor.CheckDeserializedData(data, deserializedData);
                }
                return(stream.Length);
            }
        }
Пример #3
0
        public long SerializeThenDeserialize_Loop_InRAM(object data, int loopCount, DataDescriptor dataDescriptor)
        {
            using (MemoryStream stream = new MemoryStream())
            {
                var serializer = new SharpSerializer(true);

                for (int iLoop = 0; iLoop < loopCount; iLoop++)
                {
                    long position = stream.Position;
                    serializer.Serialize(data, stream);
                    stream.Position = position;
                    var deserializedData = serializer.Deserialize(stream);
                    dataDescriptor.CheckDeserializedData(data, deserializedData);
                }
                return(stream.Length);
            }
        }
Пример #4
0
 public long SerializeThenDeserialize_Once_InRAM(object data, DataDescriptor dataDescriptor)
 {
     byte[] bytes;
     using (MemoryStream stream = new MemoryStream())
     {
         var serializer = new SharpSerializer(true);
         serializer.Serialize(data, stream);
         bytes = stream.ToArray();
     }
     using (MemoryStream stream = new MemoryStream(bytes))
     {
         var serializer       = new SharpSerializer(true);
         var bf               = new SoapFormatter();
         var deserializedData = serializer.Deserialize(stream);
         dataDescriptor.CheckDeserializedData(data, deserializedData);
     }
     return(bytes.LongLength);
 }