Vb.net または C# Web アプリケーションが Web ページにデータを返すストアド プロシージャを呼び出した場合、ストアド プロシージャ プロセスの途中でブラウザが閉じられます。
ストアド プロシージャを呼び出したコードが存在しないため、ストアド プロシージャが返したデータはどうなりますか?
Vb.net または C# Web アプリケーションが Web ページにデータを返すストアド プロシージャを呼び出した場合、ストアド プロシージャ プロセスの途中でブラウザが閉じられます。
ストアド プロシージャを呼び出したコードが存在しないため、ストアド プロシージャが返したデータはどうなりますか?
Vb.Net または C# Web アプリケーションを使用している場合、そのコードはブラウザーの "内部" にありません。ブラウザは単なるクライアント側です。
サーバー側がコードを実行します。
SP は、トランザクションがあったとしても完了し、SP 自体にエラーがなくてもコミットされます。
リクエストはすでにクライアントからサーバーに送信されているため、処理されます。
それを見るには、IIS を使用し、Visual Studio の [プロセスにアタッチ] オプションを使用することをお勧めします。これにより、クライアント側を閉じた場合に何が起こっているかを確認できます。
場合によります...
サーバーコードでHttpResponse.IsClientConnectedをチェック して、クライアント接続がまだ存在するかどうかを定期的にチェックしていますか? (これは、大量のデータをクライアントにストリーミングする場合に役立ちます)。しかし、それが単に非チャンク/ページ データ フェッチ ストアド プロシージャ コールである場合は役に立ちません。
そうでない場合、サーバー側のコードは完了するまで実行されます。
データは返ってきますが、受け取る相手がいません。
SPにDMLクエリがある場合、最終結果は次のようになります。