Exemplo n.º 1
0
 public static int Create <T>(this IList <T> items, T graph, ISerializeWrapper serializer = null) where T : CRUDObject
 {
     ListExtensions.SetSerializerIfNull(ref serializer);
     graph.Id        = items.Select(x => x.Id).Concat(new int[] { 0 }).Max() + 1;
     graph.SortIndex = items.Select(x => x.SortIndex).Concat(new int[] { 0 }).Max() + 1;
     items.Add(serializer.Clone(graph));
     return(graph.Id);
 }
Exemplo n.º 2
0
        public static void Update <T>(this IList <T> items, int id, Func <T, int> getIdFunc, T graph, ISerializeWrapper serializer = null)
        {
            ListExtensions.SetSerializerIfNull(ref serializer);

            var target = items.FirstOrDefault(x => getIdFunc(x) == id);
            var index  = items.IndexOf(target);

            items.RemoveAt(index);
            items.Insert(index, serializer.Clone(graph));
        }
Exemplo n.º 3
0
 public static T Read <T>(this IList <T> items, int id, ISerializeWrapper serializer = null) where T : CRUDObject
 {
     ListExtensions.SetSerializerIfNull(ref serializer);
     return(serializer.Clone(items.FirstOrDefault(x => x.Id == id)));
 }
Exemplo n.º 4
0
 public static IList <T> ReadAll <T>(this IList <T> items, ISerializeWrapper serializer = null) where T : CRUDObject
 {
     ListExtensions.SetSerializerIfNull(ref serializer);
     return(serializer.Clone(items.OrderBy(graph => graph.SortIndex).ToList()));
 }