JArray问题

时间:2017-06-01 11:45:52

标签: c# arrays json parsing

我有关于JSON Parse和Jarray.Lenght的问题。 我的目标是在这个应用程序: metin变量是我的搜索字符串。示例我写" DDDDDD&#34 ;;软件在JSON文件中搜索,这是" DDDDD"并编写控​​制台DDDDD的功能。

         string data = File.ReadAllText(@"xxxxxxxxxxxxxx");

            JArray JSONParser = JArray.Parse(data);

       String aranacakisim = "metin";

        for (int i = 0; i <= JSONParser.lenght; i++) //fail line."Lenght"is not true.
        {


            if (JSONParser[i]["Ad"]=aranacakisim) //fail line
            {
                Console.WriteLine("Ad: " + JSONParser[i]["Ad"]);
                Console.WriteLine("Soyad: " + JSONParser[i]["Soyad"]);
                Console.WriteLine("Bolum: " + JSONParser[i]["Bolum"]);
                Console.WriteLine("Sehir:" + JSONParser[i]["Sehir"]);
                Console.WriteLine("Sehir:" + JSONParser[i]["Telefon"]);
            }


        Console.ReadKey();


   JSON CODE 
       [
{
    "Ad": "Ali Kemal",
    "Soyad": "Sipahi",
    "Bolum": "Bilgisayar Muhendisligi",
    "Sehir": "Ankara",
    "Telefon": "05000000000"
},
{
    "Ad": "Neslihan",
    "Soyad": "Yağmur",
    "Bolum": "Tıp Fakültesi",
    "Sehir": "Malatya",
    "Telefon": "05000000001"
         }
       ]

如何修复此错误?请写一个真正的代码。我会疯了。非常感谢你! / 抱歉英文不好 /

错误评论

&#39; Newtonsoft.Json.Linq.JToken&#39;不能隐含地转换为&#39; bool&#39;。有明确的转换(你有不完整的转让吗?)

Jarray没有长度定义,也没有长度定义&#39;可以找到接受Jarray类型

中的第一个参数的扩展方法

1 个答案:

答案 0 :(得分:0)

第一个错误是由于JArray类没有任何名为length的属性。但是查看the documentation of the JArray class from Newtonsoft,您可以看到有Count属性。因此,以下代码段应该有效:

for (int i = 0; i <= JSONParser.Count; i++)

您获得的第二个错误很可能是拼写错误,而不是比较您分配值的值(即您使用的是=而不是==)。对于这种情况,以下代码段应该有效:

if ((string)JSONParser[i]["Ad"] == aranacakisim)

相关问题