4

RestSharp の RestClient でPOST メソッドと JSON-Patch 操作 (RFC を参照してください: https://www.rfc-editor.org/rfc/rfc6902 ) を使用する際に問題が発生しています。AddBody() には、次のようなものが含まれています。

request.AddBody(new { op = "add", path = "/Resident", value = "32432" });

エラーが出ます。json-patch本体で操作を渡す方法がわかりません。私はできる限りのことを試しました。この問題の解決策はありますか?

4

2 に答える 2

3

これは、スコットの回答の改良版です。パラメータのクエリが好きではなかったので、RestSharp はAddParameterで直接名前を設定する方法を提供しています

var request = new RestRequest(myEndpoint, Method.PATCH);
request.AddHeader("Content-Type", "application/json-patch+json");
request.RequestFormat = DataFormat.Json;
var body = new
{
  op = "add",
  path = "/Resident",
  value = "32432"
}
request.AddParameter("application/json-patch+json", body, ParameterType.RequestBody);

var response = restClient.Execute(request);
于 2016-05-13T13:44:57.693 に答える
1

これは私のために働く:

var request = new RestRequest(myEndpoint, Method.PATCH);
request.AddHeader("Content-Type", "application/json-patch+json");
request.RequestFormat = DataFormat.Json;
request.AddBody(
    new
    {
        op = "add",
        path = "/Resident",
        value = "32432"
});

request.Parameters.FirstOrDefault(p => p.Type == ParameterType.RequestBody).Name = "application/json-patch+json";

var response = restClient.Execute(request);
于 2016-03-07T15:18:48.837 に答える