0

一度に多数の OData 要求を受け入れることができるようにするために DefaultODataBatchHandler を使用していますが、これらを単一の全か無かの操作 (つまり、単一のトランザクション) として処理したいと考えています。 

私の理解では、これが変更セットの目的です。ただし、変更セットを使用して 2 つの要求 (最初の要求は成功し、2 つ目の要求は失敗) を使用して要求を送信すると、そうではないようです。最初のリクエストはデータの変更に成功し、2 番目のリクエストは失敗しますが、最初のリクエストは引き続き有効です。

この種のアトミック バッチ操作は現在サポートされていませんか?

編集:私は最新バージョンのbtwを使用しています-OData 4サポート付きのWeb API 2.2

4

1 に答える 1

0

WebApi はそのままではアトミック サポートを実装していません。その理由は、バックエンドのデータ ストレージに依存しているためです。このような要件に対処するためのサンプルがあります https://aspnet.codeplex.com/SourceControl/latest#Samples/WebApi/OData/v3/ODataEFBatchSample/、これは OData v3 用ですが、それに従って v4 を作成するのは簡単です1。試してみることをお勧めします。

于 2014-08-15T00:26:15.107 に答える