Die Umwandlung in DateTime in json.net

Ich versuche zu Deserialisieren die folgenden:

{"ts":"2012-04-22 04:14:50,669", "msg":"Hello"}

in

public class LogEntry
{
    public DateTime Ts { get; set; }
    public string Msg { get; set; }
}

mit

var logEntry = JsonConvert.DeserializeObject<LogEntry>(line);

Aber eine JsonSerializationException sagen, "{"Error converting-Wert \"2012-04-22 04:14:28,478\" Typ 'System.DateTime'. Zeile 1, position 31."}. Ich kann nicht ändern das log-format.

Ich glaube, ich könnte brauchen, um eine Analyse der Zeichenkette für das Datum selbst mit einem Konverter. Aber ich finde keine Beispiele von JsonConverter, die relevant erscheinen. Wie genau Lesen Sie den Wert aus der reader im ReadJson Methode.

Gibt es einfache Beispiele, die ich anschauen sollte? Oder bin ich da etwa falsch?

  • Diese Frage bei stack-apps aussieht, wie Sie aussieht, was Sie brauchen: stackapps.com/questions/1175/...
  • Danke. Ja, ich sah es vor, aber da der code in der ReadJson-Methode auskommentiert, habe ich nicht sehen es als ein sehr gutes Beispiel.
  • Blättern Sie nach unten durch das Beispiel, es ist eine unkommentierte version der ReadJson Methode. Entweder Weg, das Grundprinzip der Beispiel-sound.
  • Was ist mit dem Komma?
  • Das Komma, weil es das dezimal-Trennzeichen. Ich bin mehr daran interessiert, in der Allgemeinen Weise zu helfen Json.net analysieren etwas.
InformationsquelleAutor Niklas | 2012-04-25
Schreibe einen Kommentar