2016-05-23 13 views
0

Ich habe eine Indexaktion und die entsprechende Seite.
-ControllerNach dem Klicken auf Zurück, behalten Sie Suchdaten

public ActionResult Index(int? page, string searchString, string searchField) 
    { 
     var data = --data from db-- 
     ViewBag.searchString = searchString; 
     ViewBag.searchField = searchField; 
     int pageSize = 15; 
     int pageNumber = (page ?? 1); 
     if (!String.IsNullOrEmpty(searchString)) 
      { 
       switch (searchField) 
       { 
        case "firstname": 
        data = data.where(x => x.firstname == searchString); 
        break; 
        case "lastname": 
        data = data.where(x => x.lastname == lastname); 
        break; 
        default: 
        data = data.where(x => x.firstname == searchString); 
        break; 
       } 
      } 

      if (Request.IsAjaxRequest()) 
      { 
       switch() 
       { 
        code for ajax search call 
       } 
      } 

      return View(code for view);  
    } 

Ich habe versucht, die Suchdaten mit Session-Variablen zu speichern. wie

Session["searchString"] = searchString; 
Session["searchField"] = searchField; 

Und geben Sie die Session-Variablen zu suchen. In meinem Projekt werden alle Aktionen nach Abschluss der Aktionsfunktionen in die Indexaktion umgeleitet. In diesem Szenario sollten alle Daten abgerufen werden, aber die Sitzungsvariablen werden durchsucht und die gesuchten Daten werden angezeigt. Ich möchte gesuchte Daten anzeigen, indem ich auf Zurück-Knopf klicke und alle Daten auf Umleitung zeige.
Vielen Dank im Voraus

+0

Was zurück Knopf? Browser-Zurück-Taste? –

+0

Ja, die Zurück-Schaltfläche des Browsers – anand

+0

Wenn Sie auf die Zurück-Schaltfläche klicken, wird die Indexaktion ausgeführt. –

Antwort

-1

Sie können [OutputCache(NoStore = true, Duration = 0)] auf die Aktion setzen, wo Sie auf dem Server getroffen werden sollen, sobald Sie auf die Schaltfläche Zurück klicken. Ohne die Seite zwischenzuspeichern, wird der Browser versuchen, den Server zu treffen, um den Inhalt zu erhalten, anstatt den vorherigen Inhalt in den Browser-Cache zu laden, der Ihre Controller-Aktion nicht trifft.

+0

hat es nicht funktioniert – anand

+0

Erkläre was passiert ist? –

+0

beim Klicken zurück Schaltfläche, Suchdaten nicht beibehalten – anand

Verwandte Themen