1

我对 Linq 很陌生。但我正在尝试编写一个函数来使用Directory.GetDirectories(rootPath).Where(...). 有可能吗?我该如何继续?

4

2 回答 2

2
var info = new DirectoryInfo(rootPath);    
var latestDirectory = info.GetDirectories()
                          .OrderByDescending(d => d.CreationTime)
                          .FirstOrDefault();

您可以轻松更改DirectoryInfo要排序的类属性的名称。

DirectoryInfo.GetDirectories Method返回数组System.IO.DirectoryInfo,因此您可以轻松地对目录进行排序CreationTime并返回第一个。

VB.NET 解决方案:

Dim info As New DirectoryInfo(rootPath)
Dim latestDirectory As DirectoryInfo = info.GetDirectories() _
                                           .OrderByDescending(Function(d) d.CreationTime) _
                                           .FirstOrDefault()
于 2013-02-25T17:31:22.880 回答
0

您需要获取特定的 DirectoryInfo 信息来确定创建时间。试试这个。

DirectoryInfo di = new DirectoryInfo(rootPath);
var directory = di.GetDirectories()
                  .OrderByDescending(d => d.CreationTime)
                  .FirstOrDefault();
于 2013-02-25T17:34:21.917 回答