按最深目录排序包含路径的列表

3 .net c# sorting directory list

我需要对包含路径(相对或绝对)的列表进行排序,以便首先显示最深的路径,例如:

\ New Folder\Item1\tools\1
\New Folder\Item1\tools
\New Folder\Item1
\New Folder
etc ...

Path我可以使用类中的API 来执行此操作吗?

谢谢!J.

Mat*_*ton 6

这有点开箱即用,但您可以随时执行此操作:

var sortedList = list.OrderByDescending(
    p => p.Count(c => c == Path.DirectorySeparatorChar
        || c == Path.AltDirectorySeparatorChar));
Run Code Online (Sandbox Code Playgroud)

也就是说,只需按路径分隔符出现的频率排序.