我有一个linq查询。
var query = (from s in dc.ClassInfos
where s.ClassName == tbSubject.Text
select new{
location = s.ClassLocation,
Date = s.ClassDate
});
现在我想将位置值分配给局部变量。你能帮帮我怎么做吗?
答案 0 :(得分:2)
var location = query.First().location;
但我会写
var location = (from s in dc.ClassInfos
where s.ClassName == tbSubject.Text
select s.ClassLocation).FirstOrDefault();
因为如果您只使用Date
,则无需选择location
。
答案 1 :(得分:2)
您查询返回匿名类的IEnumerable
- 而不仅仅是单个值。如果您想分配第一个位置值(只要有一个),您可以这样做:
var location = query.First().location;
如果您希望列表中的所有位置都可以使用:
var locations = query.Select( x=> x.location).ToList();
答案 2 :(得分:0)
var localVar = new List<string>();
foreach (var item in query)
{
localvars.add(item.location);
}