【发布时间】:2015-03-09 10:18:40
【问题描述】:
这个助手输出分页:
@Html.BootstrapPager(
int.Parse( Request.Params[ "page" ] ),
index => Url.Action(
"List",
"Test",
new {
page = index,
amount = 10,
sort = Request.Params[ "sort" ],
order = Request.Params[ "order" ]
}
),
Model.PaginationSet.TotalItemCount,
numberOfLinks: 10
)
BootstrapPager 函数的第二个参数是 lambda。 index 变量引用了输出页码的内部循环。
您有什么办法可以让我预先准备作为Url.Action 的第三个参数传入的对象,它仍然引用lambda index 变量?
它可能看起来像这样:
object myActionData = new {
page = <index>, // I don't know how this line would work
amount = 10,
sort = Request.Params[ "sort" ],
order = Request.Params[ "order" ]
}
@Html.BootstrapPager(
int.Parse( Request.Params[ "page" ] ),
index => Url.Action(
"List",
"Test",
myActionData
),
Model.PaginationSet.TotalItemCount,
numberOfLinks: 10
)
【问题讨论】:
-
如果您的目标是减少
BootstrapPager中的代码量,那么您可以创建一个采用index并返回所需对象的方法。如果你愿意,你甚至可以把整个 lambda 变成一个函数。