コントローラアクションで、TempData変数のリダイレクトから変数を受け取ります
public ActionResult ChangePassword()
{
string t = (string)TempData["myVariable"]; // works ok when coming from the redirect
[..]
}
別の呼び出しのためにそのデータムを保持する必要があるため、ビューを返す前にデータムを再割り当てしようとします。
public ActionResult ChangePassword()
{
string t = (string)TempData["myVariable"];
[..]
TempData["myVariable"] = TempData["myVariable"];
return View();
}
レンダリングされたページからChangePasswordにPOSTリクエストをすぐに送信しますが、今回はTempData["myVariable"]がnullです。たぶん私は愚かなことをしているのですが、どうやって望みの結果を得るのですか?私はSession変数を使用したくありません(それはずっと長く持続し、Session変数の汚染を防ぐために変数がクリアされていることを手動で確認することに取り組んでいます)。フォーム(非表示の変数)を介して再投稿することもできますが、変数はサーバー側のみに保持したいと思います。