net DictionaryExtensions 集合扩展方法

public static class DictionaryExtensions
	{
			//Override value of identifical key in base dictionary
			public static void AddRangeOverride<TKey, TValue>(this IDictionary<TKey, TValue> baseDictionary,
					IDictionary<TKey, TValue> dictionaryToAdd)
			{
					foreach (var x in dictionaryToAdd)
					{
							baseDictionary[x.Key] = x.Value;
					}
			}
			//Only add new keys into the base dictionary
			public static void AddRangeNewOnly<TKey, TValue>(this IDictionary<TKey, TValue> baseDictionary,
					IDictionary<TKey, TValue> dictionaryToAdd)
			{
					foreach (var x in dictionaryToAdd)
					{
							if (!baseDictionary.ContainsKey(x.Key))
							{
									baseDictionary.Add(x.Key, x.Value);
							}
					}

			}

			//this will throw an error if an existing key from the dictionary to add exists in the base dictionary
			public static void AddRange<TKey, TValue>(this IDictionary<TKey, TValue> baseDictionary,
					IDictionary<TKey, TValue> dictionaryToAdd)
			{
					foreach (var x in dictionaryToAdd)
					{
							baseDictionary.Add(x.Key, x.Value);
					}
			}

	}

作者:spike

分类: Net

创作时间:2023-06-25

更新时间:2024-12-09

联系方式放在中括号之中例如[[email protected]],回复评论在开头加上标号例如:#1