4

私はTempDataを使用して、Redirect after Postでメッセージを運びます。コントローラーは、次のように tempdata を設定します。

TempData["message"]="foo";
return RedirectToAction("Index");

_Layout.cshtml には、次のフラグメントがあります。

@{var temp = TempData["message"] as string; }
@if ( temp != null)
{
     <div class="message">@temp</div>
}

私の問題は、リダイレクト後にメッセージが表示されないことです。ただし、リダイレクト (更新または他のページ) の直後に続く要求では、メッセージが表示されます。表示された後、期待どおりにセッションから削除されます。

リダイレクト先のページに TempData を表示するにはどうすればよいですか?

4

2 に答える 2

1

使用する必要があります

TempData.Keep(key);
于 2012-04-19T11:22:30.787 に答える
0

あなたがするとき:

TempData["message"] = "foo";
return RedirectToAction("Index");

メッセージは、リダイレクト先のインデックス ページがそのビューをレンダリングするときに表示されます。

于 2011-11-23T15:34:14.607 に答える