0

我正在使用 DefaultODataBatchHandler 以便能够一次接受多个 OData 请求,但希望将这些请求作为单个全有或全无操作(即单个事务)来处理。 

我的理解是,这就是变更集的用途。但是,如果我使用带有两个请求的更改集提交请求——第一个成功,第二个失败——那么它似乎没有这样做。第一个请求修改数据成功,第二个失败,但第一个请求仍然生效。

目前不支持这种原子批处理操作吗?

编辑:我正在使用最新版本 btw - Web API 2.2 w/ OData 4 support

4

1 回答 1

0

WebApi 没有实现开箱即用的原子支持,原因是它依赖于后端数据存储。有一个示例可以解决此类要求https://aspnet.codeplex.com/SourceControl/latest#Samples/WebApi/OData/v3/ODataEFBatchSample/,它适用于 OData v3,但很容易按照它来创建 v4一。你可能想试一试。

于 2014-08-15T00:26:15.107 回答