3

我正在尝试从目录加载最新的文件,但我的以下代码不起作用。我有什么明显的严重错误吗?

Dim myFile = Directory.GetFiles("C:\Users\Joe\Desktop\XML Logs").OrderByDescending(Function(f) f.LastWriteTime).First()

我收到两条错误消息:

无法从这些参数推断“ ”中Public Function OrderByDescending(Of TKey)(keySelector As System.Func(Of String, TKey)) As System.Linq.IOrderedEnumerable(Of String)定义的扩展方法“ ”中类型参数的数据类型。System.Linq.Enumerable明确指定数据类型可能会更正此错误。

和:

LastWriteTime”不是“ ”的成员String

4

2 回答 2

7

您可以使 Linq 函数使用 FileInfo 对象而不是字符串。

Dim myFile = Directory.GetFiles("C:\Users\Joe\Desktop\XMLLogs").OrderByDescending(Function(f) New FileInfo(f).LastWriteTime).First()
于 2013-09-06T14:41:49.620 回答
6

Directory.GetFiles()返回String()

显然你的意思是DirectoryInfo.GetFiles()which returns FileInfo()

于 2012-02-20T23:35:35.997 回答