このコード行を実行しようとしています:
Dim OrderedFiles() As String = Directory.GetFiles(FilePath).OrderBy(x >= x.CreationTime)
x が宣言されていないという x に関するエラーが表示されます。
プロジェクトを Option Strict Off と Option Infer On に設定しています。Option Strict をオンにすると、プロジェクトから何千ものエラーが発生し (継承されます)、それらすべてを修正する時間がありませんが、x でエラーが発生しなくなりました。コンピューターを窓から投げ捨てたいと思うまで、グーグルで検索しました。
このステートメントを修正する方法についての助けをいただければ幸いです。
編集:
私はよりエレガントな解決策を望んでいましたが、この特定の問題を解決するために私が思いついたものは次のとおりです。
Dim fileList() As String = Directory.GetFiles(FilePath)
Dim fileDate(fileList.Length - 1) As DateTime
For i As Integer = 0 To fileList.Length - 1
fileDate(i) = New FileInfo(fileList(i)).CreationTime
Next
Array.Sort(fileDate, fileList)
With EmailTemplates_DropDownList
.DataSource = fileList.Reverse.Take(5)
.DataBind()
End With
特にエレガントではありませんが、仕事はします。私はワンライナーのLINQソリューションを望んでいましたが、LINQのバックグラウンドがなく、仕事をする方法を知りません。本を買いに行く時間です。