バックグラウンドワーカーがいます。開始時に、データベースから別の Web サービスにレコードを送信するメソッドを呼び出します。
問題は、ジョブの送信を停止する停止ボタンを作成しましたが、機能しませんでした。
backgroundworker または CancelAsync を破棄しようとしましたが、そのメソッドはまだ実行されています (私のアプリは Windows フォーム アプリであるため、メソッドがまだ実行されていることがわかっています)。誰でも私にこれの解決策を教えてもらえますか? どうも!
私のコード:
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
Send();
}
停止ボタン
private void btnStop_Click(object sender, EventArgs e)
{
try
{
backgroundWorker1.CancelAsync();
backgroundWorker1.Dispose();
}
catch (Exception ex)
{
Global._logger.Info(ex.Message + ex.Source);
ShowError(ex.Message);
}
}
注 : メソッド Send() は、DB をチェックした後、別のメソッドを呼び出してレコードを送信します。