JSON kann nicht in Objekt deserialisiert werden, Array erforderlich?

Ich versuche, die eingehenden JSON-Elemente zu übernehmen und an Listbox-Elemente zu binden, aber Visual Studio teilt mir mit, dass ich ein Array und kein Objekt erstellen muss. Ich musste das noch nie machen ... Weiß jemand wie?

Mein RootObject:

public class RootObject
{
    public string url { get; set; }
    public string display { get; set; }
    public List<string> genetics { get; set; }
    public List<string> price { get; set; }
    public List<string> brandMaker { get; set; }
    public string form { get; set; }
    public string dosornos { get; set; }
    public string qty { get; set; }
    public string mfg { get; set; }
    public string mobURI { get; set; }
}

Hinweis: Genetik, Preis und BrandMaker geben nur einen Wert zurück, wie unten dargestellt:

"genetics": [
    "typeophere"
],
"price": [
    "$1400"
],

JSON DATEI / ANFRAGE GRUNDLEGENDE ERGEBNISSE:

  [
{
    "url": "N/A",
    "display": "",
    "genetics": [
        "microogiz"
    ],
    "price": [
        "96.016"
    ],
    "brandMaker": [
        "Oshi Kunti Multikashi, Osaka, JP"
    ],
    "form": "tangent",
    "dosornos": "n/a",
    "qty": "88G",
    "mfg": "SelfMade Industries, USA Dist.",
    "mobURI": "n/a"
}

]

Mein ursprünglicher Code:

// Get JSON via WEB
string ProviderURI = goURI;
webClient webClient = new WebClient();
webClient.DownloadStringCompleted += new  
    DownloadStringCompletedEventHandler(webClient_DownloadStringCompleted);
webClient.DownloadStringAsync(new Uri(ProviderURI));

void webClient_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
    if (e.Error != null)
    {
        return;
    }

    var deserializedJSON = JsonConvert.DeserializeObject<RootObject>(e.Result);
    lstBoxResults.ItemsSource = deserializedJSON; // or deserializedJSON.url.ToString();
}

Antworten auf die Frage(2)

Ihre Antwort auf die Frage