C#中带有expando对象的字段“ params”

时间:2019-05-07 12:03:56

标签: c# dynamic expandoobject

我在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 用作具有expando对象的字段名称。

构建该json的好方法是什么?

它与deribit.com一起使用。他们发布了API V2,并更改了一些名称,但我想没有考虑这种情况。

1 个答案:

答案 0 :(得分:0)

您可以将expando转换为字典,或直接使用字典作为示例:

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);