1. ホーム
  2. asp.net-mvc

[解決済み] ViewDataとTempDataの違い?

2022-12-28 14:22:31

質問

私はViewDataを知っていていつも使っていますが、ASP.NET Preview 5ではTempDataという新しいものが導入されました。

私は通常、オブジェクトの辞書のアプローチを使用する代わりに、ViewDataを強くタイプします。

では、どのような場合にViewDataの代わりにTempDataを使うべきでしょうか?

これに関するベストプラクティスはありますか?

どのように解決するのですか?

一文で言うと TempData は ViewData のようなものですが、ひとつだけ違いがあります。それは、2つの連続したリクエストの間だけデータを含み、それ以降は破棄されることです。あなたは TempData を使ってエラーメッセージを渡したりすることができます。

時代遅れではありますが この記事 についての良い説明があります。 TempData のライフサイクルを説明しています。

Ben Scheirman が言ったように ここで :

<ブロッククオート

TempDataは、1回のリクエストで利用可能な、セッションでバックアップされた一時的なストレージの辞書です。 コントローラ間のメッセージの受け渡しに最適です。