1

Kendo グリッドを使用して複数のテーブルを更新する必要があります。グリッドは Kendo データソースを使用して、サービス呼び出し (OData/Entity Framework) を介してリモート データを読み取り、更新します。

  • 現在、グリッドは、たとえば Table_A からデータを読み書きできます。
  • Table_A は、Table_B と 1 対多の関係を持つことができます。$expand: {'Table_B'} を使用して、読み取り中に Table_B 項目を取得できます。
  • 行アイテムの編集では、Table_B の N 個のアイテムも更新する必要があります。モデルで使用可能な子アイテム (data.Table_B.results) を更新しようとしましたが、Request Entity Too Large という 413 エラーが発生します。

グリッドアイテムを編集するとき、次のことは可能ですか?

  1. 1 回の更新で親行と子行を更新しますか?
  2. または、最初に親行を更新してから子行を更新することは可能ですか

例を検索しましたが、これまでのところ見つかりません。アイデアや例はありますか?

4

1 に答える 1

1

2つのオプションはどちらもOKです。

最初の機能では、バッチ機能が必要です。つまり、複数のリクエストを 1 つのマルチパート HTTP リクエストにラップします。

2 つ目については、非常に簡単で、いくつかの要求を送信する必要があります。たとえば、次のようになります。

  1. PUT/PATCH ~/odata/注文(1)
  2. PUT/PATCH ~/odata/Orders(1)/OrderLines(1)
  3. PUT/PATCH ~/odata/Orders(1)/OrderLines(2)

OData を使い始める場合は、OData v4 から始めることをお勧めします。このバージョンから数週間前に OASIS の標準になったからです。参照用のサンプルを次に示します: https://aspnet.codeplex.com/SourceControl/latest#Samples/WebApi/OData/v4/

于 2014-04-14T00:17:44.840 に答える