我有以下字符串(json格式)
我从服务器上得到了:

{[{"ruta": "1","division": "7"},{"ruta": "2","division": "7"},{"ruta": "3","division":"7"},{"ruta": "4","division": "7"},{"ruta": "5","division": "7"},{"ruta": "23","division": "7"}]}

我想获取每个值并将它们保存在字符串变量中,以便将它们保存在数据库中。

为此,我尝试执行以下操作:
JArray jarr = JArray.Parse(result);
foreach (JObject content in jarr.Children<JObject>())
{
    foreach (JProperty prop in content.Properties())
    {
         string tempValue = prop.Value.ToString; // This is not allowed
         //here more code in order to save in a database
    }
}

但是我找不到将值转换为字符串的方法。

最佳答案

使用ToString(),而不是ToString
ToString()是一个方法调用; ToString是对ToString方法的引用,并且只能分配给兼容的委托(delegate)。

您还可以强制转换为String,因为JToken类定义了一个转换:

string tempValue = (string)prop.Value;

要考虑的另一种选择是使用JSON序列化:创建一个表示JSON数据的类(具有相同的结构),然后将JSON反序列化为该类。它使代码更具可读性和可维护性。

关于c# - 使用JArray从JSON获取值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23095507/

10-11 23:24
查看更多