Hi Rajiv,
Thanks for using Syncfusion
Products.
We would like to let you know
that we have achieved your requirement “binding dynamic objects to Grid” by
first converting the dynamic objects to Datatable and then we have binded it to
Grid. Pease refer the following code snippets.
Code Snippet:
[CONTROLLER]
public static class Extn
{
public static DataTable ToDataTable(this IEnumerable<dynamic> items)
{
var data = items.ToArray();
if (data.Count() == 0) return null;
var dt = new DataTable();
foreach (var key in ((IDictionary<string, object>)data[0]).Keys)
{
dt.Columns.Add(key);
}
foreach (var d in data)
{
dt.Rows.Add(((IDictionary<string, object>)d).Values.ToArray());
}
return dt;
}
}
…
public ActionResult
GridFeatures()
{
var obj = new PropertyDynamic();
obj.dynamicProperties = PropertyDynamic.GetDynamicProperties();
IEnumerable data = Extn.ToDataTable(obj.dynamicProperties).AsEnumerable();
return View(data);
}
For your convenience we have
created a sample and the same can be downloaded from below link.
Sample:
http://www.syncfusion.com/downloads/support/directtrac/general/GridSample2-1516660105.zip
Please let us know if you need
any further assistance.
Regards,
Alan Sangeeth S