using System.Collections.Generic;
public static void Main()
var calculated = new[]{new
State = "New", TimeinHrs = 4.6
State = "Todo", TimeinHrs = 5.4
State = "Done", TimeinHrs = 8.5
var expTransposed = new ExpandoObject();
calculated.ForEach(c => expTransposed.TryAdd(c.State, c.TimeinHrs));
dynamic dynTransposed = expTransposed;
Console.WriteLine(dynTransposed.New);