私のビューには、外部サイトに投稿する必要がある html フォームがあります。
ビューの HTML フォーム
<form action="http:\\externalsite\external-site-action" method="POST">
<input type="text" name="parameter1" value="someValue1"/>
<input type="text" name="parameter2" value="someValue1"/>
<input type="submit" value="Submit to external site">
</form>
データを external-site-action に投稿すると、このアクションによって他の外部サイトのページにリダイレクトされるため、ユーザーはそこにとどまる必要があります。しかし、このフォームが投稿される前に、コントローラーでいくつかのアクション/メソッドを実行する必要がありますが、このアクションはデータベースにいくつかの変更を加えているだけなので、リダイレクトやアクションの結果は必要ありません。それ以外の場合、ユーザーは外部サイトページにリダイレクトする必要があります、データが投稿されます。アクションでデータベースの変更を実行し、このフォームをプログラムで外部サイトに投稿し、コントローラー アクションでユーザーをこの外部サイト (同じブラウザー タブ) にリダイレクトするには、次のようにします。
public ActionResult ChangeDBPostAndRedirectToExternal(string parameter1, string parameter2)
{
DoSomeDatabaseStuff();
PostParametersToExternalSiteAndRedirectUserToPageDataPostedTo();
}
Redirect() メソッドを試しましたが、このメソッドではポスト アクションを実行できません。では、コントローラーのアクションを介して外部アクションにデータを投稿し、処理された投稿データで外部アクションのビュー結果を取得するにはどうすればよいですか? または、必要なものを達成するためのより賢明なアプローチはありますか? DoSomeDatabaseStuff();
POSTの前に必要です。