Newtonsoft.json: рдмреЗрд╕ рдХреНрд▓рд╛рд╕ рдкрд░ рд╕рдЬрд╛рдП рдЬрд╛рдиреЗ рдкрд░ JsonProperty.ItemConverterType рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 22 рдлрд╝рд░ре░ 2013  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: JamesNK/Newtonsoft.Json

[TestFixture]
public class JsonPropertyItemConverterType
{
    public enum Thingy
    {
        Test
    }

    [JsonObject(MemberSerialization.OptIn)]
    public abstract class Base
    {
        [JsonProperty(PropertyName = "type", Required = Required.Always, Order = 0,
            ItemConverterType = typeof (StringEnumConverter))]
        public Thingy Type { get; internal set; }
    }

    public class Thing : Base
    {
        public Thing()
        {
            Type = Thingy.Test;
        }
    }

    [Test]
    public void ItShouldWork()
    {
        var json = JsonConvert.SerializeObject(new Thing());

        Assert.That(json, Is.EqualTo(@"{""type"":""Test""}"));
    }

    [Test]
    public void ItShouldWork2()
    {
        var json = JsonConvert.SerializeObject(new Thing(), new StringEnumConverter());

        Assert.That(json, Is.EqualTo(@"{""type"":""Test""}"));
    }
}

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореИрдВ wring рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ,

    [JsonConverter(typeof(StringEnumConverter))]

рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдирд╛рдо рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдЖрдЗрдЯрдордХрд╡рд░рдЯреЗрдк рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ

рдореИрдВ wring рд╕рдВрдкрддреНрддрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдБ,

    [JsonConverter(typeof(StringEnumConverter))]

рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

6 рд╕рд╛рд▓ рдмрд╛рдж рдФрд░ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдиреЗ рдореБрдЭреЗ рдпрд╣ рдЧрд▓рддреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧреБрдорд░рд╛рд╣ рдХрд┐рдпрд╛ред

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

Schwenkner picture Schwenkner  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

VDerGoW picture VDerGoW  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

alexdawes picture alexdawes  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

tankbob picture tankbob  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

brockallen picture brockallen  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ