public void UpdateList(List <object> objList) { if (objList == null) { return; } List <SqlExpression> sqlExpressionList = new List <SqlExpression>(); SqlExpressionArgs args = new SqlExpressionArgs(); args.Type = SqlExpressionType.Update; foreach (var item in objList) { if (item == null) { Debug.Assert(false, "insert obj 为 null"); continue; } SqlExpression sqlExpression = RelationalMappingUnity.GetSqlExpression(item, args); sqlExpressionList.Add(sqlExpression); } ExcuteSqlExpression(sqlExpressionList); }
public List <T> Select <T>(List <AttachedWhereItem> attachedWhere, SqlExpressionPagingArgs pagingArgs) where T : class, new() { SqlExpressionArgs args = new SqlExpressionArgs(); args.Type = SqlExpressionType.Select; args.GenerateWhere = false; args.AttachedWhere = attachedWhere; args.PagingArgs = pagingArgs; //不能用 default(T) ,会是null SqlExpression sqlExpression = RelationalMappingUnity.GetSqlExpression(new T(), args); DataSet ds = ExcuteDataSetSqlExpression(sqlExpression); List <T> dataList = RelationalMappingUnity.Select <T>(ds.Tables[0]); if (pagingArgs != null) { if (ds.Tables.Count > 1) { pagingArgs.TotalRow = int.Parse(ds.Tables[1].Rows[0][0].ToString()); } else { pagingArgs.TotalRow = ds.Tables[0].Rows.Count; } pagingArgs.TotalPage = pagingArgs.TotalRow / pagingArgs.PageSize; if (pagingArgs.TotalRow % pagingArgs.PageSize > 0) { pagingArgs.TotalPage++; } } return(dataList); }
public bool Fill <T>(object obj, string table, Dictionary <string, object> attachedWhere) where T : class, new() { SqlExpressionArgs args = new SqlExpressionArgs(); args.Table = table; args.Type = SqlExpressionType.Select; if (attachedWhere == null) { args.GenerateWhere = true; } else { args.GenerateWhere = false; args.AttachedWhere = AttachedWhereItem.Parse(attachedWhere); } //不能用 default(T) ,会是null SqlExpression sqlExpression = RelationalMappingUnity.GetSqlExpression(obj, args); DataSet ds = ExcuteDataSetSqlExpression(sqlExpression); List <T> dataList = RelationalMappingUnity.Select <T>(ds.Tables[0]); Debug.Assert(dataList.Count <= 1, "Fill 时取出的记录大于1条"); if (dataList.Count != 1) { return(false); } T dataObj = dataList[0]; ReflectionHelper.Inject(obj, dataObj); return(true); }
public int Remove(object obj) { if (obj == null) { return(0); } SqlExpressionArgs args = new SqlExpressionArgs(); args.Type = SqlExpressionType.Delete; SqlExpression sqlExpression = RelationalMappingUnity.GetSqlExpression(obj, args); return(ExcuteSqlExpression(sqlExpression)); }
/// <summary> /// 插入失败以异常形式抛出 /// </summary> /// <param name="obj"></param> /// <returns></returns> public bool Insert(object obj) { if (obj == null) { return(false); } SqlExpressionArgs args = new SqlExpressionArgs(); args.Type = SqlExpressionType.Insert; SqlExpression sqlExpression = RelationalMappingUnity.GetSqlExpression(obj, args); return(ExcuteSqlExpression(sqlExpression) == 1); }
public int Update(object obj, string table, string excludeFields) { if (obj == null) { return(0); } SqlExpressionArgs args = new SqlExpressionArgs(); args.Table = table; args.Type = SqlExpressionType.Update; args.ExcludeFields = excludeFields; SqlExpression sqlExpression = RelationalMappingUnity.GetSqlExpression(obj, args); return(ExcuteSqlExpression(sqlExpression)); }