wie bekomme ich Daten von cookie anzeigen, C# in mvc3 mit Viewbag

Dies ist das erste mal für das schreiben von C# in MVC. Füge ich die Zeile mit dem Wert für cookie und möchte es genrate die Anzahl der Zeilen, aber ich weiß nicht, wie es zu tun.

Wenn Euch bessere Lösungen, ich werde dankbar sein. 🙂

Erstellen Sie zunächst cookie

if (Request.Cookies["UserSettings"] != null)
        {
            HttpCookie myCookie = new HttpCookie("UserSettings");
            myCookie["Row"] = "5";
            myCookie.Expires = DateTime.Now.AddDays(1d);
            Response.Cookies.Add(myCookie);
        }

Zweiten, Lesen, Cookie, Controller Zeilen Lesen von cookie und senden Sie dann durch "Viewbag.RowCookie" anzeigen

 if (Request.Cookies["UserSettings"] != null)
        {
            string userSettings;
            if (Request.Cookies["UserSettings"]["Row"] != null)
            {
                userSettings = Request.Cookies["UserSettings"]["Row"];
                ViewBag.RowCookie = userSettings;
            }

        }
        return View();

Schließlich in Sicht, Dann Fehler angezeigt, wenn Sie auf die Seite. (Hinweis: ich habe in der Zeile mit dem Wert in Ordnung ist in der anderen Seite.)

   @{int row = 3 ;
      row = (int)ViewBag.RowCookie; } //the problem is this line

     @for (int i = 0; i < row ; i++)
    {
        <tr>
            <td>
                <p>
                    @Html.Label("Name")
                    @Html.EditorFor(model => model.Name[i])</p>
            </td>
            <td>
                <p>
                    @Html.Label("Prob" + (i+1))
                    @Html.EditorFor(model => model.Prop[i])</p>
            </td>
            <td>
                <p>
                    @Html.Label("Forecast" + (i+1))
                    @Html.EditorFor(model => model.Forecast[i])</p>
            </td>
            <td> <p>
                    @Html.DisplayFor(model => model.AxB[i])
                  </p>
            </td>
             <td> <p>
                    @Html.DisplayFor(model => model.PowAxB[i])
                  </p>
            </td>
        </tr>

Danke Euch allen für die Hilfe.

  • was ist der Fehler???
  • Es kann HTML erzeugen, weil der viewbag, ich möchte die Daten zu viewbag in "int" - Typ.
  • Sie können die Verwendung von @ - Modell IEnumerable<yourModel> dann Schleife durch foreach zu verwenden
InformationsquelleAutor riseres | 2012-05-17
Schreibe einen Kommentar