public int Speed { get; set; }
public static void Main()
var myCodec = new JsonCodec();
var mySchema = new DSchema("Zb5qQllrUFRhNdhkFA22SiWcaZEky1BNREW0+UO6FAnO0VEfgvJbDZS0/ykAHA55V5MUv80lMnQkr3SBU8cV/LbQv5oTgwGj7bD+En6MAsrjKKkk6kJk0k4oe/PQINRLpag0+sIMr08QYOQTply0WDq0ef8ogm8SaGf0Om1iqSwVAGkjW2zRnh9+8wj93ellAqL97aCFljFdD7uwb/aj8F8/rp5up9oav/lUvOgeMZjv0FCtknkESEpBF7B3IipadUaWxBARikWbCaVXsj5nRXASLw+F/2EW0NbEw3us7pZroqhb9PP4xwbFlwQIzJ7cwNrwTRsoOkURRDkK2N9awyR5omiXfBXD1eWYb7Qm+IFXmwct6hv4zNPzlcs4iJwy58AiXk/JnM+Lat4Kd/U5YFfl2cEY9VSFBl7A0M4IBaeN6cjWSlGb7PB6TEPl3FflDkj559qoo4zAh24j9mwApOE2TbT9lwTPol9DFX35NcrSYDRB87vYq9mdlbIqO+l7ibfazjwKorE3rz2toc7ueQWbnrU2F/bRH1bxF6iX7rFnnqG61rAdv4k1P3gtFvctyz23YZTv33IOu9Bs0qc7YJWVS5EosBpzHXQT8pfDhV2h4wTlh86PQZEqI1Qtk9eL6RLfo0U2/SKS+vCLiydGlstMdCTSemqDHwRIlo0+mEoysH8X/eEfDAf+qYnP36tlQlk=");
string msg = "{ 'Name':'Gemini', 'Speed':45000, 'Other':{'id':'x1234', 'size':20, 'Payload':true, 'Launches':[1964,1965,1966]} }";
myCodec.DecoderOptions.ConflictHandler = MyHandler;
var rocket = myCodec.Decode<Essentials>(msg, mySchema.FindType("World-Schema.Rocket"));
if (rocket.Speed > 40000)
Console.WriteLine("Orbiting...");
public static DResponse MyHandler(DConflict conflict)
case DConflictKind.BindingMissing:
case DConflictKind.SchemaMissing:
System.Console.WriteLine("New field: " + conflict.Reference);
return DResponse.Continue;