Я часто использую текущий шаблон в моем коде в настоящее время
var dictionary = new Dictionary<type, IList<othertype>>();
// Add stuff to dictionary
var somethingElse = dictionary.ContainsKey(key) ? dictionary[key] : new List<othertype>();
// Do work with the somethingelse variable
Или иногда
var dictionary = new Dictionary<type, IList<othertype>>();
// Add stuff to dictionary
IList<othertype> somethingElse;
if(!dictionary.TryGetValue(key, out somethingElse) {
somethingElse = new List<othertype>();
}
Оба эти пути ощущаются довольно круто. Я действительно хотел бы что-то вроде
dictionary.GetValueOrDefault(key)
Теперь я мог бы написать метод расширения для класса словаря, который делает это для меня, но я подумал, что у меня может быть что-то, что уже существует. SO, есть ли способ сделать это таким образом, чтобы это было более "легко на глаза", не введя метод расширения в словарь?