我是MVC 4的新手,我试图找出如何订购通过从模型中读取而创建的列表。
以下是型号代码:
public class Files
{
[Key]
public int File_id { get; set; }
public string Original_file_name { get; set; }
public string Current_file_name { get; set; }
public string Description { get; set; }
public string File_path { get; set; }
public string File_type { get; set; }
public string File_status { get; set; }
public DateTime Expiry_date { get; set; }
//public int Uploaded_by { get; set; }
//public DateTime Uploaded_on { get; set; }
}
public class FilesContext : DbContext
{
public DbSet<Files> Files { get; set; }
}
以下是创建列表的控制器代码:
return View(db.Files.ToList());
最后是将其写入屏幕的html:
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.Original_file_name)
</td>
<td>
@Html.DisplayFor(modelItem => item.Current_file_name)
</td>
<td>
@Html.DisplayFor(modelItem => item.File_type)
</td>
<td>
@Html.DisplayFor(modelItem => item.File_status)
</td>
<td>
@Html.DisplayFor(modelItem => item.Expiry_date)
</td>
<td>
@Html.ActionLink("Details", "Details", new { id=item.File_id }) |
<!--@Html.ActionLink("Test", "Test", new { id=item.File_id }) |-->
@Html.ActionLink("Delete", "Delete", new { id=item.File_id })
</td>
</tr>
}
答案 0 :(得分:2)
按文件名升序排序:
db.Files.OrderBy(file => file.Original_file_name).ToList();
按文件名Descening排序:
db.Files.OrderByDescending(file => file.Original_file_name).ToList();
多个订单:
db.Files.OrderBy(file => file.Original_file_name).ThenBy(file => file.Expiry_date).ToList();
答案 1 :(得分:1)
像:
db.Files.OrderBy(f => f.Expiry_date).ToList();
或
db.Files.OrderByDescending(f => f.Expiry_date).ToList();
答案 2 :(得分:1)
return View(db.Files.OrderBy(col=>col.Expiry_date).ToList());
或者将Expiry_date替换为您要排序的任何其他列。