Im Folgenden erhalten, ist die gültige JSON, die meinen Dienst beim Aufruf zurückkehrt:JSON Deserialisierung in C# Nullwerte in allen Datenelemente
[{
"CCRQ": "2006/1/26 0:00:00",
"CLXH": "CA6510B1",
"CarBodyColor": "color"
}]
Unten ist mein Code enthält Datamembers:
[DataContract]
public class Response
{
[DataMember(Name = "CCRQ")]
public string CCRQ { get; set; }
[DataMember(Name = "CLXH")]
public string CLXH { get; set; }
[DataMember(Name = "CarBodyColor")]
public string CarBodyColor { get; set; }
}
ich jedoch Ich stelle eine Anfrage an Service und empfange Null in allen Datenmitgliedern.
public static Response MakeRequest(string requestUrl)
{
HttpWebRequest request = WebRequest.Create(requestUrl) as HttpWebRequest;
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
{
DataContractJsonSerializer jsonSerializer = new DataContractJsonSerializer(typeof(Response));
object objResponse = jsonSerializer.ReadObject(response.GetResponseStream());
Response jsonResponse = objResponse as Response;
return jsonResponse;
}
}
Warum bekomme ich Null in allen Attributen?
ist die 'objResponse' Variable null oder nicht? Das Problem liegt aber wahrscheinlich in "typeof (Response)", da der JSON vom Typ 'List' ist und nicht 'Response'. –
Julo
Von Ihrer Verwendung von '[DataContract]' werde ich davon ausgehen, dass Sie Web-Service WCF verwenden. Warum erstellen Sie eine 'HttpWebRequest'? Sie können Ihrem Projekt eine Servicereferenz hinzufügen, und die gesamte Deserialisierung wird für Sie erledigt. –
@Julo, Problem wegen Abwesenheit der Liste <>. Fehler wurde behoben. Danke :) –