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) { }
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()}】"); } } }
public AbstractCRUDRepository(DBTypeEnums dbType) { this.DbType = dbType; }
public VerInfoRepository(DBTypeEnums dbType = DBTypeEnums.MYSQL) : base(dbType) { }
public PressureRepository(DBTypeEnums dbType = DBTypeEnums.MYSQL) : base(dbType) { }
public ExpressCompanyRepository(DBTypeEnums dbType = DBTypeEnums.ORACLE) : base(dbType) { }
public TEMPerARepository(DBTypeEnums dbType = DBTypeEnums.MYSQL) : base(dbType) { }