コード例 #1
0
 public static void Deserialize(IActivityLog activityLog, byte[] serializedActivityLog)
 {
     Util.ThrowOnNullArgument(serializedActivityLog, "serializedActivityLog");
     if (serializedActivityLog.Length == 0)
     {
         return;
     }
     using (MemoryStream memoryStream = new MemoryStream(serializedActivityLog, true))
     {
         using (BinaryReader binaryReader = new BinaryReader(memoryStream))
         {
             binaryReader.ReadInt32();
             binaryReader.ReadInt32();
             binaryReader.ReadInt64();
             List <ActivityLogSerializer.SerializedPropertyInfo> propertyInfos = ActivityLogSerializer.DeserializeActivitySchema(binaryReader);
             int             num  = binaryReader.ReadInt32();
             List <Activity> list = new List <Activity>(num);
             for (int i = 0; i < num; i++)
             {
                 Activity item = ActivityLogSerializer.DeserializeActivity(binaryReader, propertyInfos);
                 list.Add(item);
             }
             activityLog.Reset();
             activityLog.Append(list);
         }
     }
 }