新手 C#、资深 DBA 和 LINQ 新手。我试图了解为什么 groupBy 上下文中的 select 子句返回类型名称(在本例中为“System.Linq.Enumerable+WhereSelectEnumerableIterator`2[CasesReportParser.Requisition,System.String]”)而不是字段值。
我相信,我最终的困惑通常是如何在 groupBy 结果中包含其他字段,而这些附加字段没有被分组(在 g.Key 中不可用)。
这是代码,它是返回类型名称的最后一行的条件 ExamType。谢谢你。
var ListFinal = rows
.GroupBy(l => new { ExamDate = ParseDate(l.ExamDate), l.PatientID, l.PatientFirst, l.PatientLast, l.Birthdate, l.SiteName })
.Select(g => new {
//ExamDate = g.Select(l => l.ExamDate),//.ToString().Substring(0,10), //.ToString().Split(' ')[0]
ExamDate = g.Key.ExamDate,
PatientID = g.Key.PatientID,
PatientFirst = g.Key.PatientFirst,
PatientLast = g.Key.PatientLast,
Birthdate = g.Key.Birthdate,
SiteName = g.Key.SiteName,
ReqCount = g.Select(l => l.RequisitionNumber).Distinct().Count(),
ExamCount = g.Select(l => l.ExamID).Distinct().Count(),
ExamType = (g.Select(l => l.ExamID).Distinct().Count()>1 ? "multiple" : g.Select(l => l.ExamType).ToString())
});
慕码人2483693
ITMISS
相关分类