【发布时间】:2017-04-19 23:31:01
【问题描述】:
我不知道如何在详细信息页面中执行排序。我有一个带有订单列表的经典页面,对于每一行我都有一个操作链接来返回该订单的详细信息视图。 我试试这个
public ActionResult Details(int? anno,int? nr, string centro, string sortOrder)
{
ViewBag.Codice = String.IsNullOrEmpty(sortOrder) ? "Articolo_desc" : "";
if (anno == null && nr == null && string.IsNullOrEmpty(centro))
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
else
{
string s = "anno=" + Request.QueryString["anno"] + "&nr=" + Request.QueryString["nr"] + "¢ro=" + Request.QueryString["centro"];
ViewBag.search = s.Replace("search=", "").Replace("%3D", "=");
}
var righe = from d in db.DETAILS
where d.Anno == anno && d.Num == nr && d.Centro == centro
select new DetailsOrdersView
{
Articolo = r.Codice,
...
};
if (righe == null)
return HttpNotFound();
switch(sortOrder)
{
case "Articolo_desc":
righe = righe.OrderByDescending(i => i.Articolo);
break;
default:
righe = righe.OrderBy(i => i.Articolo);
break;
}
return View(righe);
}
}
详细查看
@Html.ActionLink("codice","Details", new { sortOrder = ViewBag.Codice, ViewBag.search })
但我在排序时收到了错误的请求,这是路线 订单/详细信息?sortOrder=Articolo_desc&search=anno%3D2017%26nr%3D6%26centro%3D1
【问题讨论】:
标签: asp.net-mvc sorting