you need to create a dateable with columns that match your object. then loop thru the dictionary and add a row to data table.
// create table and get obj types
var table = new DataTable();
var props = dictionary
.GetType()
.GetGenericArguments()[1]
.GetProperties(BindingFlags.Instance|BindingFlags.Public);
// define columns
foreach (var p in props)
{
table.Columns.Add(p.Name, p.PropertyType);
}
// copy data
foreach (var obj in dictionary)
{
// new row
var row = table.NewRow();
// copy column values
foreach (var p in props)
{
row[p.Name] = p.GetValue(obj);
}
// add row to table
table.Rows.Add(row);
}