Ich verwende Google Translation API, um eine Sprache einer Zeichenfolge zu erkennen. Die API gibt diesen JSON zurück:Deserialisieren eines JSON aus der Google-Übersetzungs-API mithilfe von C#
{
"data": {
"detections": [
[
{
"confidence": 0.37890625,
"isReliable": false,
"language": "ro"
}
]
]
}
}
Ich habe immer noch nicht den Weg der Deserialisierung gefunden. Ich verwende System.Runtime.Serialization
und dies ist mein Code:
[DataContract]
public class GoogleTranslationResponse
{
[DataMember(Name = "data")]
public Data Data { get; set; }
}
[DataContract]
public class Data
{
[DataMember(Name = "detections")]
public List<Detection> Detections { get; set; }
}
[DataContract]
public class Detection
{
[DataMember(Name = "confidence")]
public decimal Confidence { get; set; }
[DataMember(Name = "isReliable")]
public bool IsReliable { get; set; }
[DataMember(Name = "language")]
public string Language { get; set; }
}
// ...
var jsonSerializer = new DataContractJsonSerializer(typeof(GoogleTranslationResponse));
result = (GoogleTranslationResponse)jsonSerializer.ReadObject(new MemoryStream(Encoding.Unicode.GetBytes(responseData)));
Ich erhalte diese als Ergebnis:
Confidence: 0
IsReliable:false
Language:null
Welchen Code verwenden Sie, um die Deserialisierung durchzuführen? –
'" detections "' ist ein Array von Arrays. Müssen Sie das anhand einer Liste von Listen modellieren? –
@ Brian Rogers Ich habe die Frage aktualisiert. –