Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/339.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 取消异步存储过程_C#_.net_Ado.net_Asynchronous - Fatal编程技术网

C# 取消异步存储过程

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

我正在运行一个用户可以取消的长时间运行的存储过程。我正在使用Backgroundworker组件和ado.net的BeginExecuteReader方法

一切似乎都正常,但即使我取消了存储过程,数据库仍在运行该过程

有没有办法取消数据库服务器本身上的实际作业?我可以看到我们可以使用kill命令,但这需要作业id


谢谢你的工作,但是一旦我取消它,它就会调用回调方法,并抛出异常,说“当前命令发生严重错误”。有没有办法检查命令是否被取消?在调用EndExecuteReader方法之前,IAsyncResult的is Completed属性为true。