1

MVC と ASP.NET を学んでいます。最後の列に各行の [編集] ボタンが含まれているテーブルがあります。これは問題なく動作し、ボタンとリンクのルック アンド フィールが気に入っていますが、ページを開くと、コントローラーで HttpPost アクションが呼び出されます。なぜこれが起こっているのか、それは送信ボタンであり、そのページが送信されているように動作することを理解しています。そのページの HttpGet にリダイレクトするボタンが表示されるように、これを変更するにはどうすればよいですか? (かみそりで...)

@using (Html.BeginForm("Update", "Purchase"))
{
    @Html.HiddenFor(x => x.Id)
    <input type="submit" value="Update" />
}
4

2 に答える 2

1

投稿されたデータを保存したいので、おそらくPost-Redirect-Getが必要です。

postアクションでは、GETアクション(更新された情報を持つ同じページである可能性があります)にリダイレクトします。このように、後続のリフレッシュ(F5)はPOSTを再送信しません。使うのにいいパターンです。

于 2012-10-05T13:59:32.377 に答える
1

パラメータに追加FormMethod.GetBeginForm()ます。

于 2012-10-05T13:57:57.977 に答える