繁体   English   中英

c# 动态ExpandoObjects 名称中的句点?

[英]Periods in the name of c# dynamic ExpandoObjects?

也许这是一个愚蠢的问题,但我正在做一个项目,它希望我生成一些 JSON ,如下所示:

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

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

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

我不能 go “ActionSpec.action.type”,因为那不会 output 所需的“action.type”。 这有意义吗? 谢谢!

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

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

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

使用Json.Net

JObject jObj = new JObject();

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

var json = jObj.ToString();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM