/// <summary> /// Возвращает строковое представление объекта в формате SQL выражения /// </summary> /// <param name="databaseFieldType">Тип поля объекта в БД</param> /// <param name="value">Сам объекта</param> /// <returns></returns> string ConvertObjectToExpression(DatabaseFieldType databaseFieldType, object value) { if (value == null) { return("NULL"); } switch (databaseFieldType) { case DatabaseFieldType.String: return(string.Format(@"'{0}'", value.ToString())); case DatabaseFieldType.Integer: return(value.ToString()); case DatabaseFieldType.Double: return(value.ToString()); case DatabaseFieldType.DateTime: return(string.Format(@"'{0}'", ((DateTime)value).ToString("yyyy-MM-dd"))); case DatabaseFieldType.OracleDateTime: return(string.Format(@"TO_DATE('{0}', 'YYYYMMDD')", ((DateTime)value).ToString("yyyyMMdd"))); case DatabaseFieldType.Boolean: return(((bool)value) == true ? "1" : "0"); default: throw new InvalidOperationException("Non-registered field type."); } }
public FieldTypeAttribute(DatabaseFieldType databaseFieldType) { Value = databaseFieldType; }