我有以下代码:
string result = "{\n \"success\": false,\n \"error-codes\": [\n \"missing-input-response\"\n ]\n}";
var results = JsonConvert.DeserializeObject<dynamic>(result);
var r = results.success;
现在我需要知道 r 是 True 还是 False。这是我所拥有的:
if (r.Equals(false))
{
//action
}
但是上面的测试似乎不起作用。在我的案例中查找 True 或 False 值的正确方法是什么?
最佳答案
表达式
JsonConvert.DeserializeObject<dynamic>(result).success
实际上返回一个JValue
类型的对象,这不是 equal为假
。您需要首先强制返回 bool 值:
var results = JsonConvert.DeserializeObject<dynamic>(result);
bool r = results.success; // Force "success" to be boolean.
if (!r)
{
// Action.
}
关于c# - 从 JSON 字符串中检测 True/False 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29382292/