2012-09-10 21 views
5

私はasp.netフォームのアプリを持っていました。ユーザがF5をクリックするか、最新のデータエントリからデータをリフレッシュするときにバグがあります。ユーザーがF5キーを押すかasp.netでリフレッシュするとデータが送信されないようにするにはどうすればいいですか?

+1

@aelnajjar少なくともここを見てください! http://stackoverflow.com/questions/3759572/avoid-form-re-submit and http://stackoverflow.com/questions/2526568/asp-net-prevent-form-submission-twiceこれは何度も尋ねられています! –

答えて

11

自分自身にリダイレクトすることで、ページをASP.NETの初期状態に簡単にリセットできます。ここには3つの方法があります:

  1. Response.Redirect(Request.Path);
要求へのパスは以下の形式で提示される

:/MyApp/MyFile.aspx

  1. のResponse.Redirect(Request.RawUrl)。

は、だけでなく露出した経路であるが、のような任意のクエリ文字列パラメータ: /MyApp/MyFile.aspx?foo=bar

  1. のResponse.Redirect(Request.Url.ToString() );のみならず

パスとクエリ文字列パラメータを露出するが、形の絶対的な基準として利用可能? MyServerを/のMyApp/MyFile.aspx FOO =バー

1

これを防ぐには複数の方法があります。最も簡単なのは別のページへのResponse.Redirectです。このページは影響を受けずにリフレッシュできます。

// process form post 
Response.Redirect("anotherpage.aspx"); 
関連する問題