I have the following method to create this ExpandoObject:
List<object> example = new List<object>();
foreach (var rate in rates)
{
var rateObject = new ExpandoObject() as IDictionary<string, object>;
rateObject["Id"] = rate.Id;
rateObject["RateType"] = rate.RateType;
rateObject["Units"] = rate.R6Item.Unit.Symbol;
rateObject["Schedule"] = rate.R6Item.Schedule.Description;
rateObject["R6Code"] = rate.R6Item.Code;
rateObject["R6Description"] = rate.R6Item.Description;
rateObject["R7Code"] = rate.R7Item.Code;
rateObject["R7Description"] = rate.R7Item.Description;
rateObject["DICODE"] = rate.R6Item.Schedule.Discipline.Code;
foreach (var currency in rate.Project.ProjectCurrencies)
{
rateObject[currency.Currency.Name] = currency.Currency.Name;
}
example.Add(rateObject);
}
Now when I expand the example object it looks like so:
and if I expand further it's like so:
Now how I want the data is how it's displayed inside the Dynamic View, is there a way to be able to access this? and have example just equal to the Dynamic View of the ExpandoObject?


You can surely do a lot to enhance your debugging experience. Here is my quick attempt:
I had to use composition to extend sealed class
ExpandoObjectwith attributes:There are:
ToString()method used when displaying collections,Valueto accessExpandoObject,Propertiesused to visualize in debuggerKeyValuePairentries.