示例#1
0
        public static IEnumerable <T> CloneExtension <T>(this IEnumerable <T> collection)
        {
            if (collection == null)
            {
                return(null);
            }

            return(collection.Select(item => CloneOperator <T> .Clone(item)));
        }
示例#2
0
        public static IDictionary <TKey, TValue> OnlyValueCloneExtension <TKey, TValue>(this IDictionary <TKey, TValue> collection)
        {
            if (collection == null)
            {
                return(null);
            }

            Dictionary <TKey, TValue> dictionary = new Dictionary <TKey, TValue>();

            foreach (var item in collection)
            {
                dictionary[CloneOperator <TKey> .Clone(item.Key)] = item.Value;
            }
            return(dictionary);
        }
示例#3
0
 public static T Clone <T>(T instance)
 {
     return(CloneOperator <T> .Clone(instance));
 }
示例#4
0
 public static void MakeSnapshot(T needSnapshot)
 {
     SnapshotCache[needSnapshot] = CloneOperator.Clone(needSnapshot);
 }