window.onbeforeunload からコード ビハインド メソッド(データをデータベースに保存するなど) を実行したいと考えています。save メソッドに非共有メンバー (txtboxed、cmbboxes など)があるため、PageMethods を使用できません。この状況をどのように処理しますか?それは文字通り私の時間を殺しています。
私を助けてください。
window.onbeforeunload からコード ビハインド メソッド(データをデータベースに保存するなど) を実行したいと考えています。save メソッドに非共有メンバー (txtboxed、cmbboxes など)があるため、PageMethods を使用できません。この状況をどのように処理しますか?それは文字通り私の時間を殺しています。
私を助けてください。
onbeforeunload
イベントでサーバーに関連することを行う唯一の方法は、ページ メソッドを使用するなど、サーバーに新しい要求を行うことです。このページはすでに削除されているため、サーバーと通信する他の方法はありません。
実際の保存を別の静的メソッドにリファクタリングして、通常のイベントとページ メソッドの両方から呼び出すことができます。例:
public static void ActualSave(string somedata, string otherdata) {
// save
}
public void SaveButton_Click(object sender, EventArgs e) {
string somedata = SomeControl.Text;
string otherdata = OtherControl.Text;
ActualSave(somedata, otherdata);
}