我有一些 JSON,我检查并解析为 JArray。 JSON 类似于:

"required" : [ "1", "2" ]

现在当它解析时,结果是一个 JValues 数组。我想检查我的字符串是否出现在此列表中。所以,要做到这一点,我这样做:
JArray requiredArray = JArray.Parse(myJson["required].ToString());

bool exists = requiredArray.Contains("1");

这返回错误,我认为这是由于它将 JValue 与字符串进行了比较。我尝试将字符串转换为 JValue,如下所示:
JValue itemValue = JValue.Parse("1");

它不喜欢那样,说不能将 JToken 转换为 JValue。

我需要知道的是,我的 JArray 是否包含这个字符串值。

最佳答案

您可以使用 Any :

bool exists = requiredArray.Any(t => t.Value<string>() == "1");

关于c# - 检查字符串是否出现在 JValues 列表中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48770988/

10-13 03:11