Набор данных возвращает 4 таблицы данных как набор результатов, но все в виде типа объекта {строки}, хотя в таблице он имеет различные типы данных, такие как int.
var ds = new DataSet();
return var ds = WithConnection(c =>
{
var multi = c.QueryMultiple(sql: "StoredProcedureName",
param: new { Project = projectID },
commandType: CommandType.StoredProcedure);
while (!multi.IsConsumed)
{
var dt = ChngDataTable(multi.Read());
ds.Tables.Add(dt);
}
return ds;
});
protected DataTable ChngDataTable(IEnumerable<dynamic> items)
{
var exisData= items.ToArray();
var dt = new DataTable();
if (exisData.Count() == 0) return dt;
foreach (var key in ((IDictionary<string, object>)data[0]).Keys)
{
if(!dt.Columns.Contains(key))
dt.Columns.Add(key);
}
foreach (var d in exisData)
{
dt.Rows.Add(((IDictionary<string, object>)d).Values.ToArray());
}
return dt;
}`
Есть ли простой способ получить значения с фактическим типом данных из БД, поскольку я не могу использовать какие-либо свойства
Пожалуйста, помогите !!!!