【发布时间】:2014-09-30 10:08:46
【问题描述】:
我想从特定文件夹中获取文件以便在轮播中显示它们,所以我正在使用:
string[] files = Directory.GetFiles("path/to/my/folder")
但是,这些文件在files[] 中按名称排序
在我的页面(强类型视图)中,我的Model 包含十几个属性,包括一个由要显示的图片填充的List<FileModel> filesToDisplay。 FileModel 是一个自定义模型,它包含名称、大小、布尔值IsMain 和其他一些图片属性。
另一方面,filesToDisplay 列表是从我的数据库中填充的,我将在其中搜索我必须显示的图片。所有的图片都在同一个目录下,但是我不能总是显示这个目录下的所有图片;这就是我搜索要显示的数据库的原因。
我的目标是在我的轮播中显示文件:
- 图片中
IsMain在第一位置为真。 总是只有一张图片,IsMain为真 - 然后,作为第二张图片,第一张
IsMain为假的图片来自filesToDisplay - 然后作为第三张图片,第二张图片
IsMain为假来自filesToDisplay
等等...
当然,filesToDisplay 中的顺序可能(并且几乎总是)不同于 files[]
所以,我想做这样的事情:
files.OrderBy(filesToDisplay.IsMain).ThenBy(filesToDisplay(x => !x.IsMain))
这当然是不可能的。
如何用“正确”的 C# 来表达它? 感谢您的帮助!
(是的,我已经看到与我非常接近的this SO question 或this one,但我无法根据我的问题调整答案)。抱歉新手问题。
【问题讨论】:
标签: c# asp.net asp.net-mvc sorting