Von dem, was ich gelesen habe, werden Informationen in TempData für die aktuelle Anfrage und die nächste Anfrage (damit Sie Informationen über Weiterleitungen weitergeben können) vorhanden sein. Das Problem besteht darin, dass die Informationen in TempData für die nächste Anforderung weiterhin vorhanden sind, wenn ich zu einer Controlleraktion blicke, die nicht umgeleitet wird. Ich benutze TempData, um Informationsnachrichten zu speichern, die dem Benutzer angezeigt werden. Jetzt bekomme ich die Nachrichten für den ersten Bildschirm auch auf dem zweiten Bildschirm.ASP.NET MVC: Löschen von TempData nach der Ausführung einer Controller-Methode
Gibt es eine gute Zeit im Controller-Lebenszyklus, um TempData zu löschen, wenn sie nicht mehr verwendet wird?
Aber was passiert, wenn meine Controller-Aktion umleitet? Ich kann ViewData in diesem Fall nicht verwenden, da die Nachrichten nicht mehr vorhanden sind. Gibt es eine bessere Möglichkeit, solche Meldungen wie in TempData/ViewData zu speichern? –
Sie müssen ViewData verwenden, wenn Sie nicht umleiten, und TempData, wenn Sie umleiten. In beiden Fällen ist alles andere automatisch. Um sie anzuzeigen, schreiben Sie dann TempData ["key"] ?? ViewData ["key"] in Ihrer Sicht. –