Użycie JsonConvert.DeserializeObject do deserializacji Json do klasy C # POCO

Oto moja prostaUser Klasa POCO:

/// <summary>
/// The User class represents a Coderwall User.
/// </summary>
public class User
{
    /// <summary>
    /// A User's username. eg: "sergiotapia, mrkibbles, matumbo"
    /// </summary>
    public string Username { get; set; }

    /// <summary>
    /// A User's name. eg: "Sergio Tapia, John Cosack, Lucy McMillan"
    /// </summary>
    public string Name { get; set; }

    /// <summary>
    /// A User's location. eh: "Bolivia, USA, France, Italy"
    /// </summary>
    public string Location { get; set; }

    public int Endorsements { get; set; } //Todo.
    public string Team { get; set; } //Todo.

    /// <summary>
    /// A collection of the User's linked accounts.
    /// </summary>
    public List<Account> Accounts { get; set; }

    /// <summary>
    /// A collection of the User's awarded badges.
    /// </summary>
    public List<Badge> Badges { get; set; }

}

I metodę, której używam do deserializacji odpowiedzi JSON na aUser obiekt (ten faktycznyPołączenie JSON jest tutaj):

private User LoadUserFromJson(string response)
{
    var outObject = JsonConvert.DeserializeObject<User>(response);
    return outObject;
}

Wywołuje to wyjątek:

Nie można deserializować bieżącego obiektu JSON (np. {"Name": "value"}) do typu 'System.Collections.Generic.List`1 [CoderwallDotNet.Api.Models.Account]', ponieważ typ wymaga tablicy JSON (np. [ 1,2,3]), aby prawidłowo deserializować.

Aby naprawić ten błąd, zmień JSON na tablicę JSON (np. [1,2,3]) lub zmień deserializowany typ, tak aby był normalnym typem .NET (np. Nie jest typem pierwotnym, jak liczba całkowita, a nie typem kolekcji jak tablica lub lista), które można deserializować z obiektu JSON. JsonObjectAttribute można również dodać do typu, aby wymusić deserializację z obiektu JSON. Ścieżka „accounts.github”, linia 1, pozycja 129.

Nigdy wcześniej nie pracowałem z tą metodą DeserializeObject, więc utknąłem tutaj.

Upewniłem się, że nazwy właściwości w klasie POCO są takie same jak nazwy w odpowiedzi JSON.

Co mogę spróbować deserializować JSON do tej klasy POCO?

questionAnswers(7)

yourAnswerToTheQuestion