C# 取消异步存储过程
我正在运行一个用户可以取消的长时间运行的存储过程。我正在使用Backgroundworker组件和ado.net的BeginExecuteReader方法 一切似乎都正常,但即使我取消了存储过程,数据库仍在运行该过程 有没有办法取消数据库服务器本身上的实际作业?我可以看到我们可以使用kill命令,但这需要作业idC# 取消异步存储过程,c#,.net,ado.net,asynchronous,C#,.net,Ado.net,Asynchronous,我正在运行一个用户可以取消的长时间运行的存储过程。我正在使用Backgroundworker组件和ado.net的BeginExecuteReader方法 一切似乎都正常,但即使我取消了存储过程,数据库仍在运行该过程 有没有办法取消数据库服务器本身上的实际作业?我可以看到我们可以使用kill命令,但这需要作业id 谢谢你的工作,但是一旦我取消它,它就会调用回调方法,并抛出异常,说“当前命令发生严重错误”。有没有办法检查命令是否被取消?在调用EndExecuteReader方法之前,IAsyncR
谢谢你的工作,但是一旦我取消它,它就会调用回调方法,并抛出异常,说“当前命令发生严重错误”。有没有办法检查命令是否被取消?在调用EndExecuteReader方法之前,IAsyncResult的is Completed属性为true。