'daki her öğe için özel json serileştirme IEnumerable
bir enum ve DateTime
olan bir nesneyi serileştirmek için Json.NET kullanıyorum. Bu gibi bir şey:IEnumerable
class Chart
{
// ...
public IEnumerable<int> YAxis { get; set; }
public IEnumerable<State> Data { get; set; }
public IEnumerable<DateTime> XAxis { get; set; }
}
Ama enum dize olarak serialize yapmak ve DateTime
dize biçimini değiştirmek için özel bir JsonConverter
gerekir.
Ben enum için here belirtildiği gibi JsonConverter
niteliği ve yapılması here olarak özel bir IsoDateTimeConverter
kullanarak denedim:
[JsonConverter(typeof(StringEnumConverter))]
public IEnumerable<State> Data { get; set; }
[JsonConverter(typeof(MyDateTimeConverter))]
public IEnumerable<DateTime> XAxis { get; set; }
Ben de bir IEnumerable
için işe umuyordum, ama şaşırtıcı olmayan öyle değil:
'System.Enum' yazmak için 'WhereSelectArrayIterator`2 [System.Int32, Model.State]' türünde nesne dönüştürülemiyor.
JsonConverterAttribute
'un, her bir öğe için numaralandırılmamış olarak değil, uygulandığını söylemenin bir yolu var mı?
@juharr Bu aslında yolumda olan bir şeyi paylaşmak için bir çaba oldu. Ve benim googling becerilerimle gurur duyduğumu düşünmek için ... – andrepnh