JSON RP C Параметры C# - PullRequest
       6

JSON RP C Параметры C#

1 голос
/ 13 марта 2020

Я пытаюсь создать метод для отправки команд JSONRP C 2.0 с помощью newtonsoft. Я хочу иметь возможность передавать параметры и их значения. Вот что у меня есть

public void test(params object[] parameters)
{
    JObject joe = new JObject();
    joe.Add(new JProperty("jsonrpc", "2.0"));
    joe.Add(new JProperty("id", "1"));
    joe.Add(new JProperty("method", "Component.Set"));

    JArray props = new JArray();
    foreach (object parameter in parameters)
    {
        props.Add(parameter);
    }

    joe.Add(new JProperty("params", props));
    string json = JsonConvert.SerializeObject(joe);
}

Но моя проблема в том, что он отправляет только имена параметров, я не знаю, как передать значения для параметров

Так что в основном, Я получаю это

{
  "jsonrpc": "2.0",
  "id": "1",
  "method": "Component.Set",
  "params": [
    "Name",
    "GO"
  ]
}

, когда то, что я ищу, выглядит примерно так

{
  "jsonrpc": "2.0",
  "id": 1234,
  "method": "Component.Set", 
  "params": {
    "Name": "My APM",
    "Controls": [
      {
        "Name": "ent.xfade.gain", 
        "Value": ‐100.0,
        "Ramp": 2.0
      }
    ]
  }
}

Как я могу сгенерировать JSON с этим форматом?

...