繁体   English   中英

JObject包含一个C#关键字-如何访问它?

[英]JObject contains a C# keyword - how to access it?

我在我的网站上使用JQuery QueryBuilder插件,该插件将其数据编译为JSON。 在服务器端代码上,我将插件返回的JSON解析为动态变量。 问题是,键之一是“运算符”,而单词运算符是ac#关键字。 我尝试使用_operator,__ operator,但这些方法不起作用。 知道如何访问键“ operator”的值吗?

例如,这是我正在使用的JSON(当然是简化的):

[{
     "id":"ABC",
     "value":"test",
     "operator":"equal"
}]

这是服务器端C#代码

dynamic json = JObject.Parse(model.pJson);
foreach (var item in json.rules) {
     string id = item.id;    
     string value = item.value;
     string _operator = item.operator; // HERE IS THE PROBLEM! I cannot type item.operator because operator is a keyword
}

您可以使用@来将关键字用作标识符,因此应该可以:

string _operator = item.@operator;

另外,您可能会发现索引器访问会很好:

string _operator = item["operator"];

尝试将item["operator"]用作字典。

暂无
暂无

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

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