作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下结构:
型号
public class EventEntry : LogEntry
{
public EventType Type { get; set; }
public string Source { get; set; }
}
public enum EventType : int
{
Information = 1,
Warning = 2,
Error = 3
}
查看
<div id="grid">
@{
var grid = new WebGrid(canPage: true, rowsPerPage: Ctrl.PageSize, canSort: true, ajaxUpdateContainerId: "grid");
grid.Bind(Model.Events, rowCount: Model.TotalRecords, autoSortAndPage: false);
grid.Pager(WebGridPagerModes.All);
@grid.GetHtml(htmlAttributes: new { id="grid" },
columns: grid.Columns(
grid.Column("Type"),
grid.Column("Source"));
}
</div>
Controller
public ActionResult Index(int? page, string sort, string sortdir) {...}
当我单击字符串类型的“源”列时,sordir 将从“ASC”更改为“DESC”,但是当我在“类型”列上尝试相同的操作时,sordir 将始终返回“ASC”。
最佳答案
当前接受的答案并不是您问题的答案。
当您在绑定(bind)操作中未提及列名时,枚举似乎不会排序。我通过在将模型绑定(bind)到网络网格时提供所有必需的列名称来修复此问题。在此示例中,UserType 属性是一个枚举。
var webgrid = new WebGrid(rowsPerPage: 25);
webgrid.Bind(Model, new[] { "FirstName", "MiddleName", "SurName", "UserType" });
var columns = webgrid.Columns(
webgrid.Column("FirstName", "Voornaam"),
webgrid.Column("MiddleName", "Tussenvoegsels"),
webgrid.Column("SurName", "Achternaam"),
webgrid.Column("UserType", "Type gebruiker"),
);
所以我认为如果您实现以下代码,排序将在不更改 Controller 的情况下进行:
<div id="grid">
@{
var grid = new WebGrid(canPage: true, rowsPerPage: Ctrl.PageSize, canSort: true, ajaxUpdateContainerId: "grid");
grid.Bind(Model.Events, new[] { "Type", "Source" }, rowCount: Model.TotalRecords, autoSortAndPage: false);
grid.Pager(WebGridPagerModes.All);
@grid.GetHtml(htmlAttributes: new { id="grid" },
columns: grid.Columns(
grid.Column("Type"),
grid.Column("Source"));
}
</div>
关于sorting - sortdir 不适用于 MVC 3 WebGird 中的枚举数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5687022/
我有以下结构: 型号 public class EventEntry : LogEntry { public EventType Type { get; set; } public s
我正在 asp.net mvc 中尝试一些网格。Microsoft 在 mvc 3 的预发行版中也有一个网格,所以我想我会尝试一下。 基本功能很容易实现,但是当涉及到排序时,我遇到了一些问题。网格按照
我是一名优秀的程序员,十分优秀!