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

[解決済み] ASP.NET MVC - TempData - グッドプラクティスかバッドプラクティスか?

2023-02-02 18:02:50

質問

私は AcceptVerbs メソッドを使用しています。これは、ASP.NET MVC でフォーム エントリを処理するための Scott Gu の Preview 5 ブログ投稿で詳しく説明されています。

  • ユーザーは GET を介して空のフォームを取得します。
  • ユーザーは入力されたフォームをPOSTで同じActionに投稿する
  • アクションはデータを検証し、適切なアクションをとり、新しいビューにリダイレクトします。

ですから、私は TempData . とはいえ、このプロセスに「確認」のステップを追加しなければならないのですが、これには TempData .

を使うことになぜか抵抗があります。 TempData -- を使うことになぜか抵抗があるのですが、それはデザインするものだからです。

これはまったく妥当な懸念なのでしょうか、それとも私の思い込みなのでしょうか?

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

私は、一時的なデータは、ユーザーに通知するための忘れ去られたメカニズムであると考えます。 最近行ったことを思い出させてくれるのは素晴らしいことですが、それをユーザー プロセスの必須ステップにするのはためらわれます。 なぜなら、ページを更新すると、それが消えてしまうからです。 また、どの程度信頼できるものなのかが明確でないため、使用するのをためらってしまうのでしょう。

確認ステップの前に、アクションを別のページにリダイレクトさせていることが問題なのではないでしょうか。 代わりに、最初に送信した後、確認ダイアログを生成するのに十分な処理を行い、その後、確認の質問で元のページを返すことができるのではないかと思っています。 バリデーションを行うかもしれない方法に似ていますが、バリデーションルールは確認ステップが実行されたかどうかをチェックします(他のバリデーションが通過するまで確認UIは隠されています)。