/// <summary> /// Get the existing item or adds a new one matched by their keys /// </summary> /// <param name="value"></param> /// <returns></returns> public TValue GetOrAdd(TValue value) { return(InnerDictionary.GetOrAdd(KeySelector.Invoke(value), value)); }