Mit ViewData-pass-Daten vom Controller zum View
Ich versuche die übergabe von Daten aus der controller-Ansicht, und zeigen diese Daten. Aber nach vielen versuchen kann ich nicht.
Controller-code :
public ActionResult ValidSearch(ProductSearchParam gp)
{
if (gp.IsCandidate)
{
ViewBag.abc="bob";
List<ProductCandidate> prodClist = new List<ProductCandidate>();
prodClist = Pcs.SearchParam(gp,0,100);
ViewBag.total = prodClist.Count;
return View("ValidSearchCandidate", prodClist);
}
else
{
List<Product> prodlist = new List<Product>();
prodlist = Ps.SearchParam(gp,0,100);
ViewBag.total = prodlist.Count;
return View("ValidSearch", prodlist);
}
//return View();
}
Anzeigen-code :
<body>
<div>
<p>Bonjour @ViewBag.abc</p>
Habe ich sogar versuchen TempData
oder ViewBag
erfolglos.
Verstehe ich nicht, warum der Wert nicht immer an die Anzeigen korrekt
Kann mir jemand helfen um dieses Problem zu lösen ?
TempData
ist nicht ViewData
! Zeigen, wie Sie versucht haben, den Zugriff auf die ViewData
EigenschaftTut mir Leid, mein Fehler, ich habe es versucht, trotzdem richtig und es funktioniert nicht.
InformationsquelleAutor Antoine Ravier | 2015-05-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Da Sie festgelegt haben, eine Eigenschaft auf die
ViewData
auf dieController
haben Sie es auf dieViewData
aufView
. Auf der anderen Seite, haben Sie dieTempData
die verwendet wird, wenn Sie benötigen, um den transfer von Informationen zwischen Anfragen, die zu einer anderen route (Umleitung auf eine Aktion). Zum Beispiel:Und in der Ansicht:
InformationsquelleAutor Felipe Oriani
Können Sie ViewBag für diese
Controller :
Anzeigen :
das ist, weil Sie mit dem Schlüsselwort "try".
versuchen Sie aktualisierte Antwort
Bitte verwenden Sie ViewBag statt ViewData
Ich denke, Sie sind immer verwirrt zwischen ViewBag und ViewData, bitte stellen Sie sicher, dass Sie die viewBag im controller als auch im view
InformationsquelleAutor Aman Khanna
In deinem Beispiel hast du verwendet ViewData-in Controller-und TempData in Sicht
Wenn Sie ViewData["Nom"] - controller, den Sie verwenden sollten, ViewData["Nom"], in Aussicht. Sind Sie verwenden, Sie sind keine Rechtschreibfehler das Objekt?
Rufen Sie das ViewData-innerhalb der Ansicht oder LayoutPage?
Ich nicht wirklich deine Frage, ich rufe die ViewData, auf den Html-Code (body).
Sind Sie sicher, dass Ihre Action-Methode wird nicht zurückkehren, bevor die Zuschreibung von ViewData? Wenn möglich, poste den vollständigen code, der Ihre Aktion
Ich habe bearbeitet den code-Teil.
InformationsquelleAutor Fabio Luz
Ersetzen ViewBag["try"] ViewData["try"] im controller-code.
Und In der else-Bedingung, die Sie haben keine Erklärung von ViewData["try"] so
möglicherweise müssen Sie die ViewData, bevor Sie es auf Ihrer Ansicht.
InformationsquelleAutor Sunil Shrestha