22 Ocak 2017 Pazar

NewTonsoft JsonConverter Annotation

JsonConverter - StringEnumConverter
Elimizde bir Enum olsun.
public enum GameType  
{
  None,
  Simple,
  Regular,
  Comeplex,
}
Şöyle yaparız.
class Game  
{
  [JsonConverter(typeof(StringEnumConverter))]  
  public GameType NameType { get; private set; } //enum
  ...
}
Bu sınıfı json'a çevirince enum alan için string elde ederiz. Çıktı olarak şunu alırız.
{
  ...,
  "NameType": "Regular",
  ...
}
String'den enum'a çevirmek için şöyle yaparız.
[JsonConstructor]       
public Game([JsonConverter(typeof(StringEnumConverter))] GameType nameType)
{
  this.NameType = nameType;
}

Hiç yorum yok:

Yorum Gönder