IEnumerable 类型的 LINQ 对象不 return DataTable
LINQ object of IEnumerable type does not return a DataTable
有人可以简单地解释一下为什么我不能在以下 linq
对象(IEnumurable
类型)上使用 CopyToDataTable
方法吗?
var query = from r in SourceData.AsEnumerable()
group r by r["fruitid"] into Dt
select new
{
Group = Dt.Key,
Sum = Dt.Sum((t)=> double.Parse(t["name"].ToString()))
};
提醒: 我的目标是在 GroupBy Clause
之后检索结果 DataTable
CopyToDataTable的泛型有限制。
看一下方法的声明:
public static DataTable CopyToDataTable<T>(this IEnumerable<T> source)
where T : DataRow
{
}
如果您注意到第二行,则您的 IEnumerable<T>
必须是 DataRow
的可枚举。您拥有的是可枚举的匿名对象。
根据您的 DataTable
的来源、绑定等,还有许多其他方法可以完成您想要做的事情,但这就是为什么您没有可用的方法.
有人可以简单地解释一下为什么我不能在以下 linq
对象(IEnumurable
类型)上使用 CopyToDataTable
方法吗?
var query = from r in SourceData.AsEnumerable()
group r by r["fruitid"] into Dt
select new
{
Group = Dt.Key,
Sum = Dt.Sum((t)=> double.Parse(t["name"].ToString()))
};
提醒: 我的目标是在 GroupBy Clause
DataTable
CopyToDataTable的泛型有限制。
看一下方法的声明:
public static DataTable CopyToDataTable<T>(this IEnumerable<T> source)
where T : DataRow
{
}
如果您注意到第二行,则您的 IEnumerable<T>
必须是 DataRow
的可枚举。您拥有的是可枚举的匿名对象。
根据您的 DataTable
的来源、绑定等,还有许多其他方法可以完成您想要做的事情,但这就是为什么您没有可用的方法.