1 static datatable convertjsontotable(string jsonvalue) 2 { 3 datatable dt = (datatable)jsonconvert.deserializeobject(jsonvalue, typeof(datatable)); 4 return dt; 5 }
static datatable convertlisttodatatable<t>(list<t> datalist) { datatable dt = new datatable(); propertydescriptorcollection props = typedescriptor.getproperties(typeof(t)); for(int i=0;i<props.count;i++) { propertydescriptor prop = props[i]; dt.columns.add(prop.name, prop.propertytype); } object[] values = new object[props.count]; foreach(t item in datalist) { for(int i=0;i<values.length;i++) { values[i] = props[i].getvalue(item); } dt.rows.add(values); } return dt; }
static datatable convertttodt<t>(list<t> datalist) { if(datalist==null || !datalist.any()) { return null; } datatable dt = new datatable(); propertyinfo[] pis = typeof(t).getproperties(); for(int i=0;i<pis.count();i++) { dt.columns.add(pis[i].name, pis[i].propertytype); } object[] valuesarr = new object[pis.count()]; foreach(var data in datalist) { for(int i=0;i<pis.count();i++) { valuesarr[i] = pis[i].getvalue(data); } dt.rows.add(valuesarr); } return dt; }