Якщо ви шукаєте дещо менш багатослівний синтаксис, ви можете створити підклас Dictionary<string, object>
(або будь-який ваш тип) таким чином:
public class DebugKeyValueDict : Dictionary<string, object>
{
}
Тоді просто ініціалізуйте так
var debugValues = new DebugKeyValueDict
{
{ "Billing Address", billingAddress },
{ "CC Last 4", card.GetLast4Digits() },
{ "Response.Success", updateResponse.Success }
});
Що еквівалентно
var debugValues = new Dictionary<string, object>
{
{ "Billing Address", billingAddress },
{ "CC Last 4", card.GetLast4Digits() },
{ "Response.Success", updateResponse.Success }
});
Перевага полягає в тому, що ви отримуєте все, що вам може знадобитися, наприклад, можливість сказати
is DebugKeyValueDict
замість is IDictionary<string, object>
або зміна типів ключа або значення пізніше. Якщо ви робите щось подібне на сторінці бритви cshtml, це набагато приємніше подивитися.
Окрім того, що ви менш детальні, ви можете, звичайно, додати до цього класу додаткові методи для того, що б вам не хотілося.