下面我有两个linQ查询,我想知道是否有办法将两者结合起来。基本上我有一个字符串列表。然后从该字符串列表中,我想创建一个新的对象列表,并根据对象的属性对其进行排序。然后将返回已订购的新对象列表。
var dirs = from file in myList
select new DirectoryInfo(file);
var dirOrdered = from file in dirs
orderby file.CreationTime ascending
select file;
是否可以使用一个var并在一个查询中完成而不是两个单独的查询?
答案 0 :(得分:2)
您可以这样做:
var dirs = from file in myList
let fileInfo = new DirectoryInfo(file)
orderby fileInfo.CreationTime ascending
select fileInfo;
答案 1 :(得分:0)
是的,您可以尝试这样的事情:
var dirs = (from file in myList
select new DirectoryInfo(file)).OrderBy(x => x.CreationTime);
答案 2 :(得分:0)
如果您更喜欢点符号,可以这样做:
var dirs = myList.Select(x => new DirectoryInfo(x)).OrderBy(x => x.CreationTime);