コード例 #1
0
        private static Activity DeserializeActivity(BinaryReader reader, List <ActivityLogSerializer.SerializedPropertyInfo> propertyInfos)
        {
            MemoryPropertyBag memoryPropertyBag = new MemoryPropertyBag();

            foreach (ActivityLogSerializer.SerializedPropertyInfo serializedPropertyInfo in propertyInfos)
            {
                bool flag = reader.ReadBoolean();
                if (flag)
                {
                    object value = serializedPropertyInfo.PropertyDeserializer(reader);
                    if (serializedPropertyInfo.PropertyDefinition != null)
                    {
                        value = ActivityLogSerializer.ConvertPropertyValue(serializedPropertyInfo.PropertyDefinition, value);
                        memoryPropertyBag.SetProperty(serializedPropertyInfo.PropertyDefinition, value);
                    }
                }
            }
            return(new Activity(memoryPropertyBag));
        }