Benutzerdefinierte JSON-Serialisierung für jedes Element in IEnumerable [duplicate]
Diese Frage hat hier bereits eine Antwort:
Wie serialisiert man ein Enum-Array in ein Json-Array von Strings? [Duplikat 2 Antworten Ich verwende Json.NET, um ein Objekt mit einem @ zu serialisiereIEnumerable
einer Aufzählung undDateTime
. Es ist so etwas wie:
class Chart
{
// ...
public IEnumerable<int> YAxis { get; set; }
public IEnumerable<State> Data { get; set; }
public IEnumerable<DateTime> XAxis { get; set; }
}
Aber ich brauche eine benutzerdefinierteJsonConverter
, um die Aufzählung als Zeichenfolge zu serialisieren und das @ zu ändeDateTime
string format.
Ich habe versucht mit derJsonConverter
Attribut wie erwähntHie für enum und ein benutzerdefiniertesIsoDateTimeConverter
as doneHie:
[JsonConverter(typeof(StringEnumConverter))]
public IEnumerable<State> Data { get; set; }
[JsonConverter(typeof(MyDateTimeConverter))]
public IEnumerable<DateTime> XAxis { get; set; }
Ich hatte gehofft, es würde für ein @ arbeitIEnumerable
auch, aber nicht überraschend:
Objekt vom Typ "WhereSelectArrayIterator" 2 [System.Int32, Model.State] kann nicht in "System.Enum" umgewandelt werden.
Gibt es eine Möglichkeit zu sagen, dass dasJsonConverterAttribute
gilt für jedes Element und nicht für die Aufzählung selbst?