@Ilija Dimov is correct–JSON.NET parses JSON floats as double
s by default. If you still want to use JObject
instead of creating a full blown POCO for deserialization, you can use a JsonTextReader
and set the FloatParseHandling
option:
var reader = new JsonTextReader(new StringReader(clientString));
reader.FloatParseHandling = FloatParseHandling.Decimal;
JObject obj = JObject.Load(reader);
Console.WriteLine(obj["max"].Value<decimal>()); // 1214.704958677686