Exemple #1
0
        public override fsResult TryDeserialize(fsData data, ref object instance, Type storageType)
        {
            fsResult result     = fsResult.Success;
            var      collection = new T();

            foreach (fsData serializedItem in data.AsList)
            {
                var      item = default(T2);
                fsResult itemResult;

                if ((itemResult = Serializer.TryDeserialize(serializedItem, ref item)).Succeeded)
                {
                    collection.Add(item);
                }
                result.Merge(itemResult);
            }

            instance = collection;
            return(result);
        }
Exemple #2
0
        public override fsResult TrySerialize(object instance, out fsData serialized, Type storageType)
        {
            fsResult      result = fsResult.Success;
            List <fsData> items  = new List <fsData>();

            foreach (var item in (T)instance)
            {
                fsData   itemData;
                fsResult itemResult;

                if ((itemResult = Serializer.TrySerialize(item, out itemData)).Succeeded)
                {
                    items.Add(itemData);
                }
                result.Merge(itemResult);
            }

            serialized = new fsData(items);
            return(result);
        }