Если вы хотите десериализовать эту конкретную строку json, вам нужно определить корневой объект, содержащий список ваших пользователей.
Например:
public class ListRoot
{
public List<User> users { get; set; }
}
public class User
{
public string name { get; set; }
public string phone { get; set; }
public string email { get; set; }
public string status { get; set; }
public string title { get; set; }
}
А теперь вы можете позвонить
var data = JsonConvert.DeserializeObject<ListRoot>(jsonData);
foreach (User u in data.users)
{
Console.WriteLine($"User:name={u.name}, phone={u.phone}, email={u.email}");
}
Конечно, если вы можете контролировать производство данных json, у вас может быть гораздо более простой подход к подготовке данных json, подобный этому
[
{
"name": "User1",
"email": "support@korewireless.com",
"phone": "+12049987456",
"status": "Active",
"title": "Mr"
},
{
"name": "User2",
"email": "info@korewireless.com",
"phone": "+12040147456",
"status": "Active",
"title": "Mr"
},
{
"name": "User3",
"email": "help@korewireless.com",
"phone": "+12040787456",
"status": "Active",
"title": "Ms"
}
]
, что дает вам возможность звонить напрямую
List<User> users = JsonConvert.DeserializeObject<List<User>>(jsonData);