Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.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# 如何回滚web服务调用_C#_Asp.net_Web Services_Transactions_Transactionscope - Fatal编程技术网

C# 如何回滚web服务调用

C# 如何回滚web服务调用,c#,asp.net,web-services,transactions,transactionscope,C#,Asp.net,Web Services,Transactions,Transactionscope,假设我调用一个Web服务将一些数据保存到它们的本地数据库中。从Web服务获得响应后,我检查响应是否存在以下情况: 1-如果插入失败,我可以使用C轻松回滚我的整个代码块 2-如果成功,我尝试将这些状态成功保存到我的数据库中。但在保存状态之前,我的数据库服务器崩溃了!所以我需要回滚web服务调用 代码示例如下所示: //Calling database var response = client.InsertNewItem(data); if(response.IsSuccess) { my

假设我调用一个Web服务将一些数据保存到它们的本地数据库中。从Web服务获得响应后,我检查响应是否存在以下情况:

1-如果插入失败,我可以使用C轻松回滚我的整个代码块

2-如果成功,我尝试将这些状态成功保存到我的数据库中。但在保存状态之前,我的数据库服务器崩溃了!所以我需要回滚web服务调用

代码示例如下所示:

//Calling database
var response = client.InsertNewItem(data);
if(response.IsSuccess)
{
    myDb.SaveSucessfulState();
    //Commit transaction
    scope.compelte();
}
else
{
    //Do roll back stuff.
}

您可以查看WCF和事务