public void Serialise(JsonWriter writer, Model.TPropertyDataType dataType, Model.PropertyValue item) { switch (dataType) { case Model.TPropertyDataType.NotSet: break; case Model.TPropertyDataType.String: writer.WriteValue(item.Value); break; case Model.TPropertyDataType.Boolean: writer.WriteValue(item.ValueAsBoolean()); break; case Model.TPropertyDataType.Integer: writer.WriteValue(item.ValueAsInt64()); break; case Model.TPropertyDataType.Float: writer.WriteValue(item.ValueAsDouble()); break; case Model.TPropertyDataType.DateTime: writer.WriteValue(item.ValueAsDateTime()); break; case Model.TPropertyDataType.Opaque: writer.WriteValue(item.Value); break; case Model.TPropertyDataType.Object: break; default: break; } }
private string GetValue(Model.TPropertyDataType dataType, string text) { string result = text; switch (dataType) { case Model.TPropertyDataType.NotSet: break; case Model.TPropertyDataType.String: case Model.TPropertyDataType.Opaque: break; case Model.TPropertyDataType.Boolean: bool boolValue; if (bool.TryParse(text, out boolValue)) { result = text; } else { throw new BadRequestException(); } break; case Model.TPropertyDataType.Integer: long longValue; if (long.TryParse(text, out longValue)) { result = text; } else { throw new BadRequestException(); } break; case Model.TPropertyDataType.Float: double doubleValue; if (double.TryParse(text, out doubleValue)) { result = text; } else { throw new BadRequestException(); } break; case Model.TPropertyDataType.DateTime: result = GetDateTimeString(text); break; case Model.TPropertyDataType.Object: break; default: break; } return(result); }