Exemplo n.º 1
0
        /// <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.");
            }
        }
Exemplo n.º 2
0
 public FieldTypeAttribute(DatabaseFieldType databaseFieldType)
 {
     Value = databaseFieldType;
 }