我仍然是asp.net的初学者,我想知道是否有一种方法可以将变量作为列名(别名)传递给LINQ中的select。 我只想要一种灵活使用linq的方法。 感谢您阅读我的请求
Date|IdCourrier|Sens
var req = from courrier in db.ELISE_stat_Courriers
select new
{
Date =DbFunctions.TruncateTime(courrier.DateCourrier).ToString().Substring(0,10),
courrier.IdCourrier,
courrier.Sens,
};
List<string> l = new List<string>
{
"Arrivé",
"Départ",
"Dossier",
"Interne"
};
这些列名称,如果可以通过变量传递它们
Date|Arrivé|Départ|Dossier|Interne
var req1 = from courrier in req
group courrier by courrier.Date
into grp
select new
{
Date = grp.Key,
l.ElementAt(0)= grp.Where(x => x.Sens=="Arrivé").Count(),
l.ElementAt(1)= grp.Where(x => x.Sens == "Départ").Count(),
l.ElementAt(2) = grp.Where(x => x.Sens == "Dossier").Count(),
l.ElementAt(3)= grp.Where(x => x.Sens == "Interne").Count()
};
这是我得到的错误: 无效的匿名类型成员声明符。必须使用成员分配,简单名称或成员访问声明匿名类型成员。