Мне нужно получить доступ к свойствам json, чтобы я мог отфильтровать результат по регистрам устройств (AEVL2020 или AEVL2021), но я не могу понять, как получить к нему доступ. Кажется, что RootObject не может получить доступ к чему-либо. Я делаю это около 2 дней, поэтому мне нужна помощь.
Вот мой json:
{
"registers":{
"AEVL2020":[
{
"user_id": "1",
"employee_id": "12",
"name": "Juan Dela Cruz",
"privilege": "0"
},
{
"user_id": "2",
"employee_id": "32",
"name": "Pedro Dela Cruz",
"privilege": "0"
}
],
"AEVL2021":[
{
"user_id": "1",
"employee_id": "29",
"name": "Maria Del Mundo",
"privilege": "0"
},
{
"user_id": "2",
"employee_id": "222",
"name": "Jay Del Mundo",
"privilege": "0"
}
]
}
}
мой C#:
static void Main(string[] args)
{
using (StreamReader r = new StreamReader("C:\\Users\\Admin\\source\\repos\\Practice1\\Practice1\\company1.json"))
{
string json = r.ReadToEnd();
var root = JsonConvert.DeserializeObject<RootObject>(json);
// This is where the error, I can't access either AEVL2020 or AEVL2021
foreach (var p in root.AEVL2020 || root.AEVL2021)
{
Console.WriteLine(p.user_id + p.name + p.employee_id + p.privilege);
}
}
}
public class AEVL2020
{
public string user_id { get; set; }
public string employee_id { get; set; }
public string name { get; set; }
public string privilege { get; set; }
}
public class AEVL2021
{
public string user_id { get; set; }
public string employee_id { get; set; }
public string name { get; set; }
public string privilege { get; set; }
}
public class Registers
{
public List<AEVL2020> AEVL2020 { get; set; }
public List<AEVL2021> AEVL2021 { get; set; }
}
public class RootObject
{
public Registers registers { get; set; }
}