Beispiel #1
0
        public static IDbConnection GetConnection(DBTypeEnums dbType)
        {
            var conStr = AppDomain.CurrentDomain.GetData("DefaultDB");

            if (conStr == null)
            {
                string connectioName = ConfigurationManager.AppSettings["ConnectionName"];
                conStr = ConfigurationManager.ConnectionStrings[connectioName].ConnectionString;
                AppDomain.CurrentDomain.SetData("DefaultDB", conStr);
            }

            switch (dbType)
            {
            case DBTypeEnums.MYSQL:
            {
                return(new MySqlConnection(conStr.ToString()));
            }

            case DBTypeEnums.SQLSERVER:
            {
                return(new SqlConnection(conStr.ToString()));
            }

            case DBTypeEnums.ORACLE:
            {
                return(new OracleConnection(conStr.ToString()));
            }

            default:
            {
                throw new ArgumentException("不支持的数据库类型");
            }
            }
        }
 public DefaultRepository(DBTypeEnums dbType) : base(dbType)
 {
 }
 public LH_MergeBillRepository(DBTypeEnums dbType = DBTypeEnums.ORACLE) : base(dbType)
 {
 }
Beispiel #4
0
        public static string BuildCompareString(PropertyInfo propertyInfo, CompareEnum option, DBTypeEnums dbType)
        {
            var ParameterPrefix      = dbType == DBTypeEnums.ORACLE?":": "@";
            var columnName           = propertyInfo.Name;
            var tableColumnAttribute = propertyInfo.GetCustomAttributes(true).SingleOrDefault(p => p is TableColumnAttribute) as TableColumnAttribute;

            if (tableColumnAttribute != null)
            {
                columnName = tableColumnAttribute.ColumnName;
            }

            switch (option)
            {
            case CompareEnum.Equal:
            {
                return($" {columnName} = {ParameterPrefix}{propertyInfo.Name}");
            }

            case CompareEnum.GreaterThan:
            {
                return($"{columnName} > {ParameterPrefix}{propertyInfo.Name}");
            }

            case CompareEnum.GreaterThanEqualTo:
            {
                return($"{columnName} >= {ParameterPrefix}{propertyInfo.Name}");
            }

            case CompareEnum.In:
            {
                return($" {columnName} In {ParameterPrefix}{propertyInfo.Name} ");
            }

            case CompareEnum.LessThan:
            {
                return($"{columnName} < {ParameterPrefix}{propertyInfo.Name}");
            }

            case CompareEnum.LessThanEqualTo:
            {
                return($"{columnName} <= {ParameterPrefix}{propertyInfo.Name}");
            }

            case CompareEnum.Like:
            {
                return($"{columnName} Like {ParameterPrefix}{propertyInfo.Name}");
            }

            case CompareEnum.NotIn:
            {
                return($"{columnName} Not In {ParameterPrefix}{propertyInfo.Name}");
            }

            case CompareEnum.NotLike:
            {
                return($"{columnName} Not Like {ParameterPrefix}{propertyInfo.Name}");
            }

            case CompareEnum.IsNull:
            {
                return($"{columnName} Is Null");
            }

            default:
            {
                throw new ArgumentException($"不支持这种比较操作【{option.ToString()}】");
            }
            }
        }
Beispiel #5
0
 public AbstractCRUDRepository(DBTypeEnums dbType)
 {
     this.DbType = dbType;
 }
 public VerInfoRepository(DBTypeEnums dbType = DBTypeEnums.MYSQL) : base(dbType)
 {
 }
Beispiel #7
0
 public PressureRepository(DBTypeEnums dbType = DBTypeEnums.MYSQL) : base(dbType)
 {
 }
Beispiel #8
0
 public ExpressCompanyRepository(DBTypeEnums dbType = DBTypeEnums.ORACLE) : base(dbType)
 {
 }
 public TEMPerARepository(DBTypeEnums dbType = DBTypeEnums.MYSQL) : base(dbType)
 {
 }