Dictionary source
Extract a value from a dictionary by matching the placeholder selector against its keys.
Read time 1 minuteLast updated 13 days ago
Extract a value from a dictionary by matching the placeholder selector against its keys.
The Dictionary source resolves a selector against an IDictionary, a generic IDictionary<string, object>, or a dynamic ExpandoObject. It returns the value whose key matches the selector. When the dictionary key is not a string, the source converts it with ToString before comparing.
The key comparison uses the case sensitivity setting of the formatter.
You can nest dictionaries and drill into them with dot notation, for example . Use the nullable operator () to return an empty result instead of an error when a key is missing or its value is .
{Numbers.One}{City?.Name}nullSmart String | Arguments | Result |
|---|---|---|
| | 999 |
| | Hello Gordon Freeman |
| nested dictionaries | 1 a |
var args = new Dictionary<string, object> { ["Name"] = "Gordon", ["Surname"] = "Freeman", }; // "Hello Gordon Freeman" Smart.Format("Hello {Name} {Surname}", args);