protected EtcdException(SerializationInfo info, StreamingContext context) : base(info, context) { info.TryGetString(nameof(EtcdError), x => EtcdError = JsonConvert.DeserializeObject<EtcdError>(x)); info.TryGetString(nameof(EtcdError), x => HttpStatusCode = (HttpStatusCode) Enum.Parse(typeof(HttpStatusCode), x, true)); info.TryGetString(nameof(RequestMethod), x => RequestMethod = new HttpMethod(x)); info.TryGetString(nameof(RequestUrl), x => RequestUrl = x); }