Hi,
in Other places that i used this method working perfectly
im trying to Convert Linq result set to data table but there is an error saying "Parameter miss match"
i am getting result from a Stored Procedure
here is my linq code
public dynamic getLatestDetails()
{
var Query = (BEF.TransferEventLogToTxt("Latest", null, null, null, ColumnsSet)).ToList();
return LINQToDataTable(Query);
}
public DataTable LINQToDataTable(IEnumerable varlist)
{
DataTable dtReturn = new DataTable();
// column names
PropertyInfo[] oProps = null;
if (varlist == null) return dtReturn;
foreach (T rec in varlist)
{
if (oProps == null)
{
oProps = ((Type)rec.GetType()).GetProperties();
foreach (PropertyInfo pi in oProps)
{
Type colType = pi.PropertyType;
if ((colType.IsGenericType) && (colType.GetGenericTypeDefinition()
== typeof(Nullable<>)))
{
colType = colType.GetGenericArguments()[0];
}
dtReturn.Columns.Add(new DataColumn(pi.Name, colType));
}
}
DataRow dr = dtReturn.NewRow();
foreach (PropertyInfo pi in oProps)
{
dr[pi.Name] = pi.GetValue(rec, null) == null ? DBNull.Value : pi.GetValue
(rec, null);
}
dtReturn.Rows.Add(dr);
}
return dtReturn;
}
please help,
Ramesh MaruthiPosted Nov 3, 2014, 9:26 AM
BEF.TransferEventLogToTxt("Latest", null, null, null, ColumnsSet) I think ur getting the error at this line right ?
Can you please look at the parameters your passing and there data types and whether there order is in right way ?