ODATA v4バッチ処理 - サーバー上のバッチとしてバッチリクエストを処理するにはどうすればよいですか?ODATA v4バッチ処理 - 要求をサーバー上のバッチとして処理するにはどうすればよいですか?
私は、クライアントが1000のPOST要求を作成して、私のwebapiエンドポイントにバッチとして作成しました。私のエンドポイントはC#とEntity Frameworkを実行しています。
問題は、エンドポイント内のコントローラが各エントリを個別に処理し、バッチ要求内で作成ごとにDBトリップを行うことです。
したがって、1回のPOSTの間、サーバー上で1回はバッチとして処理されません。
バッチリクエストをバッチとして処理する方法はありますか?
AddRange?メソッド –
これを使用しないと、ODATAコントローラは公開された非同期Task Post(MyEntity myEntity) - 1000倍の時間で呼び出されます。私はその動作を無効にする方法が必要です。 –
Matt
バッチハンドラにSaveChangesを追加して、バッチ内にあった場合に実行されないようにコントローラのSaveChangesの周りにifを追加しました。これは、たとえ私がそのコードを1000回実行していたとしても、実際にはデータベースに1回しか当たっていなかったことを意味します。 – TomDoesCode