如果我的 Vb.net 或 c# Web 应用程序调用了一个将数据返回到网页的存储过程,但在存储过程过程中浏览器将关闭。
由于调用它的代码不再存在,存储过程返回的数据会发生什么情况?
如果我的 Vb.net 或 c# Web 应用程序调用了一个将数据返回到网页的存储过程,但在存储过程过程中浏览器将关闭。
由于调用它的代码不再存在,存储过程返回的数据会发生什么情况?
如果您有 Vb.Net 或 C# Web 应用程序,则代码不在浏览器“内部”。浏览器只是客户端。
服务器端运行代码。
SP 将完成,即使您在其中有任何事务,并且 SP 本身没有错误,它将被提交。
请求已从客户端发送到服务器,因此将对其进行处理。
要查看它,我建议您使用 IIS 并附加到 Visual Studio 的进程选项。如果您关闭客户端,您可以看到发生了什么。
那要看...
您是否在服务器代码中检查HttpResponse.IsClientConnected 以定期检查客户端连接是否仍然存在?(当您将大量数据流式传输到客户端时,这很有用)。但是,如果它只是一个非分块/分页数据获取存储过程调用,那将无济于事。
如果没有,服务器端代码将简单地运行到完成。
数据将返回,但没有人收到。
最终结果将是您的 sp 中是否存在 DML 查询。