KeyValuePair là bất biến,
namespace System.Collections.Generic
{
[Serializable]
public struct KeyValuePair<TKey, TValue>
{
public KeyValuePair(TKey key, TValue value);
public TKey Key { get; }
public TValue Value { get; }
public override string ToString();
}
}
Nếu bạn có bất kỳ giá trị hiện có nào trong KeyValuePair mà bạn muốn cập nhật, thì Bạn có thể thử xóa giá trị hiện có rồi thêm giá trị đã sửa đổi
Ví dụ:
var list = new List<KeyValuePair<string, int>>();
list.Add(new KeyValuePair<string, int>("Cat", 1));
list.Add(new KeyValuePair<string, int>("Dog", 2));
list.Add(new KeyValuePair<string, int>("Rabbit", 4));
int removalStatus = list.RemoveAll(x => x.Key == "Rabbit");
if (removalStatus == 1)
{
list.Add(new KeyValuePair<string, int>("Rabbit", 5));
}