【发布时间】:2017-04-11 15:30:20
【问题描述】:
我有一个如下的 c# 代码,它在IEnumerable<\u003C\u003Ef__AnonymousType0 处显示错误
谁能告诉我如何解决它。
dataSet = this.GetData.getInfo("SELECT b.nBatchID, td.F_Name &' '& td.M_Name &' '& td.L_Name AS StaffName, b.BatchName FROM (Batch AS b LEFT JOIN BatchTrainer AS bt ON b.nBatchID = bt.nBatchId) LEFT JOIN TrainerDetails AS td ON bt.TrainerId = td.TrainerID", "Batch");
IEnumerable<\u003C\u003Ef__AnonymousType0<object, string, string>> datas = dataSet.Tables[0].Copy().AsEnumerable().GroupBy<DataRow, object>((Func<DataRow, object>) (row => row["nBatchId"])).Select(g =>
{
var data = new{ id = g.Key, text = string.Join(",", g.Select<DataRow, string>((Func<DataRow, string>) (r => r["StaffName"].ToString())).ToArray<string>()), Batch = g.Select<DataRow, string>((Func<DataRow, string>) (r => r["BatchName"].ToString())).FirstOrDefault<string>() };
return data;
});
table.Columns.Add("nBatchId", typeof (int));
table.Columns.Add("StaffName", typeof (string));
table.Columns.Add("BatchName", typeof (string));
foreach (var data in datas)
table.Rows.Add(data.id, (object) data.text, (object) data.Batch);
dataSet.Tables.Clear();
dataSet.Tables.Add(table);
【问题讨论】:
-
不要从反编译器中复制粘贴代码。它们不一定会生成正确的代码。
标签: c# linq linq-to-dataset