2017-04-13 1 views
1

Ich konnte nicht herausfinden, wie Sortierung in einer Detailseite durchführen. Ich habe eine klassische Seite mit einer Liste der Reihenfolge und für jede Zeile habe ich einen Aktionslink, um Detailansicht dieser Reihenfolge zurückzugeben. ich versuche, diesenSortierung Details Seite MVC

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"] + "&centro=" + 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); 
     } 
    } 

und in Detailansicht

@Html.ActionLink("codice","Details", new { sortOrder = ViewBag.Codice, ViewBag.search }) 

aber ich auf Sortierung ich schlecht Anfrage bekommen, und das ist der Weg Bestellungen/Informationen? SortOrder = Articolo_desc & search = anno% 3D2017% 26nr% 3D6% 26centro% 3D1

Antwort

0
@Html.ActionLink("codice", "Details", new { sortOrder = ViewBag.Codice, anno = ViewBag.Anno, centro = ViewBag.Centro , nr= ViewBag.Numero }) 

i wie oben

gelöst
Verwandte Themen