public object Convert(object value, Type type) { ValidationUtils.ArgumentNotNull(value, nameof(value)); JToken token = value as JToken; if (token == null) { throw new ArgumentException("Value is not a JToken.", nameof(value)); } return(_reader.CreateISerializableItem(token, type, _contract, _member)); }