поле 'params' с объектом раскрытия в C # - PullRequest
0 голосов
/ 07 мая 2019

У меня есть следующее в C #:

dynamic JsonObject = new ExpandoObject();
JsonObject.action       = Action;
JsonObject.arguments    = JsonArguments;
JsonObject.id           = Id;
JsonObject.sig          = Signature;
var Json = JsonConvert.SerializeObject(JsonObject);

и мне нужно изменить:

JsonObject.arguments = JsonArguments;

в

JsonObject.params = JsonArguments;

но я не могу использовать params в качестве имени поля с объектом раскрытия.

Что было бы хорошим обходным путем для создания этого JSON?

Это для использования с deribit.com. Они выпустили API V2 и изменили некоторые названия, но, думаю, об этом не думали.

1 Ответ

0 голосов
/ 07 мая 2019

Вы можете преобразовать экспандо в словарь или использовать словарь напрямую, например:

var jsonObject = new ExpandoObject() as IDictionary<string, Object>;

jsonObject.Add("action", Action);
jsonObject.Add("params", JsonArguments);
jsonObject.Add("id", Id);
jsonObject.Add("sig", Signature);    

var json = JsonConvert.SerializeObject(JsonObject);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...