54

戻り値の型以外Redirectとの違いは何ですか? RedirectToActionそれぞれをいつ使用しますか?実際のシナリオでの説明は、私を大いに助けてくれます。

Confusion between Redirect と RedirectToActionを見ていましたが、私には、答えはidパラメーターの処理と適切なビューの返還に向けてより具体的であるように見えます。

4

1 に答える 1

87

RedirectToActionアプリケーション内の特定のアクション/コントローラーへのリダイレクト URL を作成できます。つまり、ルート テーブルを使用して正しい URL を生成します。

Redirectリダイレクト先の完全な URL を指定する必要があります。

パラメーターを持つIndexコントローラーにアクションがある場合:HomeId

  1. RedirectToAction("Index", "Home", new { id = 5 })ルート テーブルに基づいて URL を生成する which を使用できます。

  2. 使用できますRedirectが、URL を自分で作成する必要があるため、パスRedirect("/Home/Index/5")またはルート テーブルが機能します。

  3. google.comを使用して(外部 URL)にリダイレクトすることはできません。RedirectToAction使用する必要がありますRedirect

RedirectToActionアプリケーション内で 302 リダイレクトを実行するためのもので、ルート テーブルを操作する簡単な方法を提供します。

Redirectは、他のすべて、特に外部 URL への 302 リダイレクトを行うためのものですが、アプリケーション内でリダイレクトすることもできます。URL を自分で作成するだけで済みます。

ベスト プラクティス:RedirectToActionアプリケーションのアクション/コントローラーを扱うものすべてに使用します。URLを使用Redirectして提供する場合、ルート テーブルが変更されたときにそれらの URL を手動で変更する必要があります。

于 2012-08-30T14:21:48.203 に答える