DictionaryExtensionsAddOrUpdateTKey, TValue(IDictionaryTKey, TValue, TKey, FuncTKey, TValue, FuncTKey, TValue, TValue) Method
Namespace: KGySoft.CoreLibrariesAssembly: KGySoft.CoreLibraries (in KGySoft.CoreLibraries.dll) Version: 9.0.0
public static TValue AddOrUpdate<TKey, TValue>(
this IDictionary<TKey, TValue> dictionary,
TKey key,
Func<TKey, TValue> addValueFactory,
Func<TKey, TValue, TValue> updateValueFactory
)
<ExtensionAttribute>
Public Shared Function AddOrUpdate(Of TKey, TValue) (
dictionary As IDictionary(Of TKey, TValue),
key As TKey,
addValueFactory As Func(Of TKey, TValue),
updateValueFactory As Func(Of TKey, TValue, TValue)
) As TValue
public:
[ExtensionAttribute]
generic<typename TKey, typename TValue>
static TValue AddOrUpdate(
IDictionary<TKey, TValue>^ dictionary,
TKey key,
Func<TKey, TValue>^ addValueFactory,
Func<TKey, TValue, TValue>^ updateValueFactory
)
[<ExtensionAttribute>]
static member AddOrUpdate :
dictionary : IDictionary<'TKey, 'TValue> *
key : 'TKey *
addValueFactory : Func<'TKey, 'TValue> *
updateValueFactory : Func<'TKey, 'TValue, 'TValue> -> 'TValue
- dictionary IDictionaryTKey, TValue
- The target dictionary.
- key TKey
- The key to be added or whose value should be updated.
- addValueFactory FuncTKey, TValue
- A delegate used to generate a value for an absent key.
- updateValueFactory FuncTKey, TValue, TValue
- A delegate used to generate a new value for an existing key based on the key's existing value.
- TKey
- The type of the keys in the dictionary.
- TValue
- The type of the values in the dictionary.
TValueThe new value for the
key. This will be either the result of
addValueFactory (if the key was absent)
or the result of
updateValueFactory (if the key was present).In Visual Basic and C#, you can call this method as an instance method on any object of type
IDictionaryTKey,
TValue. When you use instance method syntax to call this method, omit the first parameter. For more information, see
Extension Methods (Visual Basic) or
Extension Methods (C# Programming Guide).