Si vous recherchez une syntaxe légèrement moins verbeuse, vous pouvez créer une sous-classe de Dictionary<string, object>
(ou quel que soit votre type) comme ceci:
public class DebugKeyValueDict : Dictionary<string, object>
{
}
Ensuite, initialisez simplement comme ça
var debugValues = new DebugKeyValueDict
{
{ "Billing Address", billingAddress },
{ "CC Last 4", card.GetLast4Digits() },
{ "Response.Success", updateResponse.Success }
});
Ce qui équivaut à
var debugValues = new Dictionary<string, object>
{
{ "Billing Address", billingAddress },
{ "CC Last 4", card.GetLast4Digits() },
{ "Response.Success", updateResponse.Success }
});
L'avantage étant que vous obtenez tous les éléments de type de compilation que vous pourriez souhaiter, comme pouvoir dire
is DebugKeyValueDict
au lieu de is IDictionary<string, object>
ou en modifiant les types de la clé ou de la valeur à une date ultérieure. Si vous faites quelque chose comme ça dans une page cshtml de rasoir, c'est beaucoup plus agréable à regarder.
En plus d'être moins verbeux, vous pouvez bien sûr ajouter des méthodes supplémentaires à cette classe pour tout ce que vous voudrez.