2

也许这是一个愚蠢的问题,但我正在做一个项目,希望我生成一些如下所示的 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”。这有意义吗?谢谢!

4

2 回答 2

8

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

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

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

于 2012-04-04T20:58:59.600 回答
2

使用Json.Net

JObject jObj = new JObject();

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

var json = jObj.ToString();
于 2012-04-04T21:14:38.500 回答