【发布时间】:2013-06-21 15:42:57
【问题描述】:
我发现了类似 here 的东西,但一直无法正常工作。我对 LINQ 很陌生,所以不完全确定它发生了什么。任何帮助,将不胜感激。我的目录名称如下:
directory-1
article-about-something-else
我想按名称对它们进行排序,但到目前为止还不能。它们位于 RedHat 服务器上的网络驱动器上。目录列表以看似随机的顺序出现乱码。
以下是我尝试过的一些方法:
DirectoryInfo dirInfo = new DirectoryInfo("Z:\\2013");
var dirs = dirInfo.GetDirectories().OrderBy(d => dirInfo.Name);
foreach (DirectoryInfo dir in dirs)
{
string month = dir.Name;
Console.WriteLine(dir.Name);
var monthDirInfo = new DirectoryInfo("Z:\\2013\\" + month);
var monthDirs = monthDirInfo.GetDirectories().OrderBy(d => monthDirInfo.CreationTime);
foreach (DirectoryInfo monthDir in monthDirs)
{
string article = monthDir.Name;
Console.WriteLine(monthDir.Name);
sb.AppendLine("<li><a href=\"/2013/" + month + "/" + article + "\">" + TextMethods.GetTitleByUrl("2013/" + month + "/" + article) + "</a></li>");
}
}
任何帮助将不胜感激。我现在有点不知所措。我确定我也遗漏了一些明显的东西。
【问题讨论】:
-
我会试一试,但是当我使用
f => f.Name时也没有成功 -
两件事...monthDirInfo 应该与dir 完全相同,那么为什么要创建一个新对象呢? Sayse 也是正确的,您需要使用 d => d.Name。
-
我知道我遗漏了一些明显的东西。多谢你们! :)