Beispiel #1
0
        public static XmlSerializableDictionary <TKey, TValue> DeepCopy <TKey, TValue>(XmlSerializableDictionary <TKey, TValue> original)
        {
            XmlSerializableDictionary <TKey, TValue> ret = new XmlSerializableDictionary <TKey, TValue>(original.Count,
                                                                                                        original.Comparer);

            foreach (KeyValuePair <TKey, TValue> entry in original)
            {
                ret.Add(entry.Key, (TValue)entry.Value);
            }
            return(ret);
        }
        private void UpdateRepeats(Data data)
        {
            XmlSerializableDictionary <int, int> repeatsOfValue = XmlSerializableDictionary <int, int> .DeepCopy(RepeatsOfValues);

            foreach (var package in data.Prepared)
            {
                if (repeatsOfValue.ContainsKey(package.Value) == false)
                {
                    repeatsOfValue.Add(package.Value, 0);
                }
                repeatsOfValue[package.Value]++; // count repeats
            }
            RepeatsOfValues = repeatsOfValue;
        }
        private int GetKeyOfMax(XmlSerializableDictionary <int, int> array)
        {
            int result;
            var e = array.GetEnumerator();

            e.MoveNext();
            result = e.Current.Key;
            foreach (var element in array)
            {
                if (element.Value > array[result])
                {
                    result = element.Key;
                }
            }
            return(result);
        }