public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { Type type = Class194.smethod_10(objectType) ? Nullable.GetUnderlyingType(objectType) : objectType; if (reader.JsonToken_0 == JsonToken.Null) { if (!Class194.smethod_9(objectType)) { throw JsonSerializationException.smethod_1(reader, "Cannot convert null value to {0}.".smethod_0(CultureInfo.InvariantCulture, objectType)); } return(null); } if ((reader.JsonToken_0 != JsonToken.StartConstructor) || !string.Equals(reader.Object_0.ToString(), "Date", StringComparison.Ordinal)) { throw JsonSerializationException.smethod_1(reader, "Unexpected token or value when parsing date. Token: {0}, Value: {1}".smethod_1(CultureInfo.InvariantCulture, reader.JsonToken_0, reader.Object_0)); } reader.Read(); if (reader.JsonToken_0 != JsonToken.Integer) { throw JsonSerializationException.smethod_1(reader, "Unexpected token parsing date. Expected Integer, got {0}.".smethod_0(CultureInfo.InvariantCulture, reader.JsonToken_0)); } long num = (long)reader.Object_0; DateTime dateTime = Class184.smethod_11(num); reader.Read(); if (reader.JsonToken_0 != JsonToken.EndConstructor) { throw JsonSerializationException.smethod_1(reader, "Unexpected token parsing date. Expected EndConstructor, got {0}.".smethod_0(CultureInfo.InvariantCulture, reader.JsonToken_0)); } if (!(type == typeof(DateTimeOffset))) { return(dateTime); } return(new DateTimeOffset(dateTime)); }
private string method_9(JsonReader jsonReader_0) { if (jsonReader_0.JsonToken_0 == JsonToken.String) { return(jsonReader_0.Object_0.ToString()); } if (jsonReader_0.JsonToken_0 == JsonToken.Integer) { return(XmlConvert.ToString(Convert.ToInt64(jsonReader_0.Object_0, CultureInfo.InvariantCulture))); } if (jsonReader_0.JsonToken_0 == JsonToken.Float) { return(XmlConvert.ToString(Convert.ToDouble(jsonReader_0.Object_0, CultureInfo.InvariantCulture))); } if (jsonReader_0.JsonToken_0 == JsonToken.Boolean) { return(XmlConvert.ToString(Convert.ToBoolean(jsonReader_0.Object_0, CultureInfo.InvariantCulture))); } if (jsonReader_0.JsonToken_0 == JsonToken.Date) { DateTime time = Convert.ToDateTime(jsonReader_0.Object_0, CultureInfo.InvariantCulture); return(XmlConvert.ToString(time, Class184.smethod_1(time.Kind))); } if (jsonReader_0.JsonToken_0 != JsonToken.Null) { throw JsonSerializationException.smethod_1(jsonReader_0, "Cannot get an XML string value from token type '{0}'.".smethod_0(CultureInfo.InvariantCulture, jsonReader_0.JsonToken_0)); } return(null); }
private object method_2(JsonReader jsonReader_0) { IDictionary <string, object> dictionary = new ExpandoObject(); while (jsonReader_0.Read()) { switch (jsonReader_0.JsonToken_0) { case JsonToken.PropertyName: { string str = jsonReader_0.Object_0.ToString(); if (!jsonReader_0.Read()) { throw JsonSerializationException.smethod_1(jsonReader_0, "Unexpected end when reading ExpandoObject."); } object obj2 = this.method_0(jsonReader_0); dictionary[str] = obj2; break; } case JsonToken.EndObject: return(dictionary); } } throw JsonSerializationException.smethod_1(jsonReader_0, "Unexpected end when reading ExpandoObject."); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { byte[] buffer; Type type = Class194.smethod_10(objectType) ? Nullable.GetUnderlyingType(objectType) : objectType; if (reader.JsonToken_0 == JsonToken.Null) { if (!Class194.smethod_9(objectType)) { throw JsonSerializationException.smethod_1(reader, "Cannot convert null value to {0}.".smethod_0(CultureInfo.InvariantCulture, objectType)); } return(null); } if (reader.JsonToken_0 == JsonToken.StartArray) { buffer = this.method_1(reader); } else { if (reader.JsonToken_0 != JsonToken.String) { throw JsonSerializationException.smethod_1(reader, "Unexpected token parsing binary. Expected String or StartArray, got {0}.".smethod_0(CultureInfo.InvariantCulture, reader.JsonToken_0)); } buffer = Convert.FromBase64String(reader.Object_0.ToString()); } if (type.smethod_14("System.Data.Linq.Binary")) { return(Activator.CreateInstance(type, new object[] { buffer })); } if (type != typeof(SqlBinary)) { throw JsonSerializationException.smethod_1(reader, "Unexpected object type when writing binary: {0}".smethod_0(CultureInfo.InvariantCulture, objectType)); } return(new SqlBinary(buffer)); }
private byte[] method_1(JsonReader jsonReader_0) { List <byte> list = new List <byte>(); while (jsonReader_0.Read()) { switch (jsonReader_0.JsonToken_0) { case JsonToken.Comment: { continue; } case JsonToken.Integer: { list.Add(Convert.ToByte(jsonReader_0.Object_0, CultureInfo.InvariantCulture)); continue; } case JsonToken.EndArray: return(list.ToArray()); } throw JsonSerializationException.smethod_1(jsonReader_0, "Unexpected token when reading bytes: {0}".smethod_0(CultureInfo.InvariantCulture, jsonReader_0.JsonToken_0)); } throw JsonSerializationException.smethod_1(jsonReader_0, "Unexpected end when reading bytes."); }
private Regex method_4(JsonReader jsonReader_0, JsonSerializer jsonSerializer_0) { string pattern = null; RegexOptions?nullable = null; while (jsonReader_0.Read()) { string str2; switch (jsonReader_0.JsonToken_0) { case JsonToken.PropertyName: { str2 = jsonReader_0.Object_0.ToString(); if (!jsonReader_0.Read()) { throw JsonSerializationException.smethod_1(jsonReader_0, "Unexpected end when reading Regex."); } if (!string.Equals(str2, "Pattern", StringComparison.OrdinalIgnoreCase)) { break; } pattern = (string)jsonReader_0.Object_0; continue; } case JsonToken.Comment: { continue; } case JsonToken.EndObject: { if (pattern == null) { throw JsonSerializationException.smethod_1(jsonReader_0, "Error deserializing Regex. No pattern found."); } RegexOptions?nullable2 = nullable; return(new Regex(pattern, nullable2.HasValue ? nullable2.GetValueOrDefault() : RegexOptions.None)); } default: { continue; } } if (string.Equals(str2, "Options", StringComparison.OrdinalIgnoreCase)) { nullable = new RegexOptions?(jsonSerializer_0.Deserialize <RegexOptions>(jsonReader_0)); } else { jsonReader_0.Skip(); } } throw JsonSerializationException.smethod_1(jsonReader_0, "Unexpected end when reading Regex."); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.JsonToken_0 == JsonToken.StartObject) { return(this.method_4(reader, serializer)); } if (reader.JsonToken_0 != JsonToken.String) { throw JsonSerializationException.smethod_1(reader, "Unexpected token when reading Regex."); } return(this.method_3(reader)); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { bool flag; Type type = (flag = Class194.smethod_10(objectType)) ? Nullable.GetUnderlyingType(objectType) : objectType; if (reader.JsonToken_0 == JsonToken.Null) { if (!Class194.smethod_10(objectType)) { throw JsonSerializationException.smethod_1(reader, "Cannot convert null value to {0}.".smethod_0(CultureInfo.InvariantCulture, objectType)); } return(null); } try { if (reader.JsonToken_0 == JsonToken.String) { string str2; string str = reader.Object_0.ToString(); if ((str == string.Empty) && flag) { return(null); } Class179 <string, string> class2 = this.method_0(type); if (str.IndexOf(',') != -1) { string[] strArray = str.Split(new char[] { ',' }); for (int i = 0; i < strArray.Length; i++) { string str3 = strArray[i].Trim(); strArray[i] = smethod_0(class2, str3); } str2 = string.Join(", ", strArray); } else { str2 = smethod_0(class2, str); } return(Enum.Parse(type, str2, true)); } if (reader.JsonToken_0 == JsonToken.Integer) { return(Class181.smethod_10(reader.Object_0, CultureInfo.InvariantCulture, type)); } } catch (Exception exception) { throw JsonSerializationException.smethod_2(reader, "Error converting value {0} to type '{1}'.".smethod_1(CultureInfo.InvariantCulture, Class193.smethod_7(reader.Object_0), objectType), exception); } throw JsonSerializationException.smethod_1(reader, "Unexpected token when parsing enum. Expected String or Integer, got {0}.".smethod_0(CultureInfo.InvariantCulture, reader.JsonToken_0)); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { bool flag; Type type = (flag = Class194.smethod_10(objectType)) ? Nullable.GetUnderlyingType(objectType) : objectType; if (reader.JsonToken_0 == JsonToken.Null) { if (!Class194.smethod_10(objectType)) { throw JsonSerializationException.smethod_1(reader, "Cannot convert null value to {0}.".smethod_0(CultureInfo.InvariantCulture, objectType)); } return(null); } if (reader.JsonToken_0 == JsonToken.Date) { if (type == typeof(DateTimeOffset)) { return(new DateTimeOffset((DateTime)reader.Object_0)); } return(reader.Object_0); } if (reader.JsonToken_0 != JsonToken.String) { throw JsonSerializationException.smethod_1(reader, "Unexpected token parsing date. Expected String, got {0}.".smethod_0(CultureInfo.InvariantCulture, reader.JsonToken_0)); } string str = reader.Object_0.ToString(); if (string.IsNullOrEmpty(str) && flag) { return(null); } if (type == typeof(DateTimeOffset)) { if (!string.IsNullOrEmpty(this.string_1)) { return(DateTimeOffset.ParseExact(str, this.string_1, this.Culture, this.dateTimeStyles_0)); } return(DateTimeOffset.Parse(str, this.Culture, this.dateTimeStyles_0)); } if (!string.IsNullOrEmpty(this.string_1)) { return(DateTime.ParseExact(str, this.string_1, this.Culture, this.dateTimeStyles_0)); } return(DateTime.Parse(str, this.Culture, this.dateTimeStyles_0)); }
private object method_1(JsonReader jsonReader_0) { IList <object> list = new List <object>(); while (jsonReader_0.Read()) { JsonToken token = jsonReader_0.JsonToken_0; if (token != JsonToken.Comment) { if (token == JsonToken.EndArray) { return(list); } object item = this.method_0(jsonReader_0); list.Add(item); } } throw JsonSerializationException.smethod_1(jsonReader_0, "Unexpected end when reading ExpandoObject."); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { if (reader.JsonToken_0 == JsonToken.Null) { return(null); } if (reader.JsonToken_0 == JsonToken.String) { try { return(new Version((string)reader.Object_0)); } catch (Exception exception) { throw JsonSerializationException.smethod_2(reader, "Error parsing version string: {0}".smethod_0(CultureInfo.InvariantCulture, reader.Object_0), exception); } } throw JsonSerializationException.smethod_1(reader, "Unexpected token or value when parsing version. Token: {0}, Value: {1}".smethod_1(CultureInfo.InvariantCulture, reader.JsonToken_0, reader.Object_0)); }
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { bool flag = Class194.smethod_10(objectType); if (reader.JsonToken_0 == JsonToken.Null) { if (!flag) { throw JsonSerializationException.smethod_1(reader, "Cannot convert null value to KeyValuePair."); } return(null); } Type type = flag ? Nullable.GetUnderlyingType(objectType) : objectType; IList <Type> genericArguments = type.GetGenericArguments(); Type type2 = genericArguments[0]; Type type3 = genericArguments[1]; object obj2 = null; object obj3 = null; reader.Read(); while (reader.JsonToken_0 == JsonToken.PropertyName) { string a = reader.Object_0.ToString(); if (string.Equals(a, "Key", StringComparison.OrdinalIgnoreCase)) { reader.Read(); obj2 = serializer.Deserialize(reader, type2); } else if (string.Equals(a, "Value", StringComparison.OrdinalIgnoreCase)) { reader.Read(); obj3 = serializer.Deserialize(reader, type3); } else { reader.Skip(); } reader.Read(); } return(Activator.CreateInstance(type, new object[] { obj2, obj3 })); }
private object method_0(JsonReader jsonReader_0) { Label_000B: switch (jsonReader_0.JsonToken_0) { case JsonToken.StartObject: return(this.method_2(jsonReader_0)); case JsonToken.StartArray: return(this.method_1(jsonReader_0)); case JsonToken.Comment: if (!jsonReader_0.Read()) { throw JsonSerializationException.smethod_1(jsonReader_0, "Unexpected end when reading ExpandoObject."); } goto Label_000B; } if (!JsonReader.smethod_0(jsonReader_0.JsonToken_0)) { throw JsonSerializationException.smethod_1(jsonReader_0, "Unexpected token when converting ExpandoObject: {0}".smethod_0(CultureInfo.InvariantCulture, jsonReader_0.JsonToken_0)); } return(jsonReader_0.Object_0); }