c#动态ExpandoObjects名称的句点?

时间:2012-04-04 20:57:23

标签: c# expandoobject facebook-ads-api

也许这是一个愚蠢的问题,但我正在开展一个项目,希望我generate some JSON看起来像这样:

{'action.type':'post', 'application':APP_ID}

在C#中,我正在尝试创建这个“action.type”属性,其值为“post”。我该怎么办?以下是我常常创建的内容:

dynamic ActionSpec = new ExpandoObject();
ActionSpec.SomeParam = "something";
ActionSpec.id = 12345;

我不能去“ActionSpec.action.type”,因为它不会输出所需的“action.type”。 这有意义吗? 谢谢!

2 个答案:

答案 0 :(得分:8)

你可以尝试通过字典填充它:

IDictionary<string, object> expandoDictionary = ActionSpec;
expandoDictionary["action.type"] = "post";

但是,如果它拒绝将其作为无效标识符,我将不会感到惊讶。

答案 1 :(得分:2)

使用Json.Net

JObject jObj = new JObject();

jObj["action.type"] = "post";
jObj["application"] = "APP_ID";

var json = jObj.ToString();