public override ConcurrentDictionary <TKey, TValue> ConvertFromSurrogate(ref ConcurrentDictionarySurrogate <TKey, TValue> surrogate) { if (surrogate.Values is null) { return(null); } else { // Order of the key-value pairs in the return value may not match the order of the key-value pairs in the surrogate return(new ConcurrentDictionary <TKey, TValue>(surrogate.Values)); } }
public override void ConvertToSurrogate(ConcurrentDictionary <TKey, TValue> value, ref ConcurrentDictionarySurrogate <TKey, TValue> surrogate) { if (value is null) { surrogate = default; return; } else { surrogate = new ConcurrentDictionarySurrogate <TKey, TValue> { Values = new Dictionary <TKey, TValue>(value) }; } }