我有一個linq查詢。使用LINQ查詢
var query = (from s in dc.ClassInfos
where s.ClassName == tbSubject.Text
select new{
location = s.ClassLocation,
Date = s.ClassDate
});
現在我喜歡將位置值分配給局部變量。你能幫我怎麼做?
我有一個linq查詢。使用LINQ查詢
var query = (from s in dc.ClassInfos
where s.ClassName == tbSubject.Text
select new{
location = s.ClassLocation,
Date = s.ClassDate
});
現在我喜歡將位置值分配給局部變量。你能幫我怎麼做?
您查詢返回匿名類的IEnumerable
- 不只是一個單一的值。如果你想分配第一位置值(前提是有一個),你可以這樣做:
var location = query.First().location;
如果你想在另一方面列表中的所有位置這應該工作:
var locations = query.Select(x=> x.location).ToList();
var localVar = new List<string>();
foreach (var item in query)
{
localvars.add(item.location);
}
有很多更好的方法來做到這一點。另外,我不認爲這回答OP的問題。 –
var location = query.First().location;
但我會寫
var location = (from s in dc.ClassInfos
where s.ClassName == tbSubject.Text
select s.ClassLocation).FirstOrDefault();
因爲你並不需要選擇Date
如果你只使用location
。
哪個位置?你可以有多個結果。 – Joe