Example #1
0
        public void WriteSchema(object obj, Type type)
        {
            FieldInfo[] fields = SchemaUtils.GetSchemaMembers(type);

            for (int i = 0; i < fields.Length; i++)
            {
                var field = fields[i];
                if (field.Attributes.HasFlag(FieldAttributes.NotSerialized))
                {
                    continue;
                }
                var dataType = field.FieldType;
                var value    = field.GetValue(obj);

                Write(value, dataType);
            }
        }
Example #2
0
        public object ReadSchema(Type type)
        {
            FieldInfo[] fields = SchemaUtils.GetSchemaMembers(type);
            object      obj    = Activator.CreateInstance(type);

            for (int i = 0; i < fields.Length; i++)
            {
                var field = fields[i];
                if (field.Attributes.HasFlag(FieldAttributes.NotSerialized))
                {
                    continue;
                }
                var dataType = field.FieldType;

                field.SetValue(obj, Read(dataType));
            }

            return(obj);
        }