Tôi cần thêm các cặp khóa / đối tượng vào từ điển, nhưng tất nhiên trước tiên tôi cần kiểm tra xem khóa đã tồn tại chưa nếu không tôi nhận được lỗi " khóa đã tồn tại trong từ điển ". Các mã dưới đây giải quyết điều này nhưng là clunky.
Một cách thanh lịch hơn để làm điều này mà không làm một phương thức trợ giúp chuỗi như thế này là gì?
using System;
using System.Collections.Generic;
namespace TestDictStringObject
{
class Program
{
static void Main(string[] args)
{
Dictionary<string, object> currentViews = new Dictionary<string, object>();
StringHelpers.SafeDictionaryAdd(currentViews, "Customers", "view1");
StringHelpers.SafeDictionaryAdd(currentViews, "Customers", "view2");
StringHelpers.SafeDictionaryAdd(currentViews, "Employees", "view1");
StringHelpers.SafeDictionaryAdd(currentViews, "Reports", "view1");
foreach (KeyValuePair<string, object> pair in currentViews)
{
Console.WriteLine("{0} {1}", pair.Key, pair.Value);
}
Console.ReadLine();
}
}
public static class StringHelpers
{
public static void SafeDictionaryAdd(Dictionary<string, object> dict, string key, object view)
{
if (!dict.ContainsKey(key))
{
dict.Add(key, view);
}
else
{
dict[key] = view;
}
}
}
}