void SetValue(JsonModel model, string key, object value) { if (commands.ContainsKey(key)) { throw new InvalidOperationException("Cannot set the value of a command property."); } var prop = model.Property(key); if (prop == null) { prop = new JProperty(key, value); model.Add(prop); return; } switch (prop.Value.Type) { case JTokenType.Integer: prop.Value = Convert.ToInt32(value); break; case JTokenType.Float: prop.Value = Convert.ToSingle(value); break; case JTokenType.String: prop.Value = Convert.ToString(value); break; case JTokenType.Boolean: prop.Value = Convert.ToBoolean(value); break; case JTokenType.Date: prop.Value = Convert.ToDateTime(value); break; case JTokenType.Guid: prop.Value = (Guid)value; break; case JTokenType.TimeSpan: prop.Value = (TimeSpan)value; break; default: break; } }
object GetValue(JsonModel model, string key) { ICommand command; if (commands.TryGetValue(key, out command)) { return(command); } var prop = model.Property(key); if (prop == null) { return(null); } switch (prop.Value.Type) { case JTokenType.Integer: return(prop.Value.Value <int> ()); case JTokenType.Float: return(prop.Value.Value <float> ()); case JTokenType.String: return(prop.Value.Value <string> ()); case JTokenType.Boolean: return(prop.Value.Value <bool> ()); case JTokenType.Date: return(prop.Value.Value <DateTime> ()); case JTokenType.Guid: return(prop.Value.Value <Guid> ()); case JTokenType.TimeSpan: return(prop.Value.Value <TimeSpan> ()); case JTokenType.Object: return(prop.Value.Value <JObject> ()); case JTokenType.Array: return(prop.Value.Value <JArray> ()); default: return(null); } }
void SetValue(JsonModel model, string key, object value) { if (commands.ContainsKey (key)) throw new InvalidOperationException ("Cannot set the value of a command property."); var prop = model.Property (key); if (prop == null) { prop = new JProperty (key, value); model.Add(prop); return; } switch (prop.Value.Type) { case JTokenType.Integer: prop.Value = Convert.ToInt32(value); break; case JTokenType.Float: prop.Value = Convert.ToSingle (value); break; case JTokenType.String: prop.Value = Convert.ToString(value); break; case JTokenType.Boolean: prop.Value = Convert.ToBoolean(value); break; case JTokenType.Date: prop.Value = Convert.ToDateTime(value); break; case JTokenType.Guid: prop.Value = (Guid)value; break; case JTokenType.TimeSpan: prop.Value = (TimeSpan)value; break; default: break; } }
object GetValue(JsonModel model, string key) { ICommand command; if (commands.TryGetValue (key, out command)) return command; var prop = model.Property (key); if (prop == null) return null; switch (prop.Value.Type) { case JTokenType.Integer: return prop.Value.Value<int> (); case JTokenType.Float: return prop.Value.Value<float> (); case JTokenType.String: return prop.Value.Value<string> (); case JTokenType.Boolean: return prop.Value.Value<bool> (); case JTokenType.Date: return prop.Value.Value<DateTime> (); case JTokenType.Guid: return prop.Value.Value<Guid> (); case JTokenType.TimeSpan: return prop.Value.Value<TimeSpan> (); case JTokenType.Object: return prop.Value.Value<JObject> (); case JTokenType.Array: return prop.Value.Value<JArray> (); default: return null; } }