C# ASP .NET アプリケーションには、DataSet を受信して処理し、返す Web サービスがあります。
低速の接続では、返却に最大 1 分かかる場合があります。Web サービス メソッドの最後の行が実行された後、データがまだ送信されている間に接続が切断された場合、バックグラウンドで何が起こるでしょうか?
Web サービスのコードを catch ブロックでラップし、ダウンロード中に接続を切断しようとしましたが、Web サービスで例外がスローされませんでした。次のような方法でエラーを検出したいと思います。
[WebMethod(Description = "プロセスデータ")] public DataSet プロセス(DataSet データ) { ブール成功 = true; StartDatabaseTransaction(); DataSet 結果 = プロセス (データ); 試す { 結果を返します。//これを実行した後、ケーブルをすばやく引き抜きます } キャッチ { 成功 = false; //ここには来ない } 最後に { if (成功) CommitTransaction(); そうでなければRollBackTransaction(); } null を返します。 }