/// <summary> /// 增加一条记录,返回新的ID号。需要有一个单一主键,并且开启有标识符属性(异步方式) /// </summary> /// <param name="entity">实体模型</param> /// <returns></returns> public virtual async Task <int> InsertAsync(DeliverChargeEntity entity) { Dictionary <string, object> dict = new Dictionary <string, object>(); GetParameters(entity, dict); string strSQL = "insert into DeliverCharge (" + "DeliverTypeID," + "AreaType," + "arrArea," + "Charge_Min," + "Weight_Min," + "ChargePerUnit," + "WeightPerUnit," + "Charge_Max) " + "values(" + "@DeliverTypeID," + "@AreaType," + "@arrArea," + "@Charge_Min," + "@Weight_Min," + "@ChargePerUnit," + "@WeightPerUnit," + "@Charge_Max)"; return(await Task.Run(() => _DB.ReturnID(strSQL, dict))); }
/// <summary> /// 增加一条记录 /// </summary> /// <param name="entity">实体模型</param> /// <returns></returns> public virtual bool Add(DeliverChargeEntity entity) { Dictionary <string, object> dict = new Dictionary <string, object>(); GetParameters(entity, dict); string strSQL = "insert into DeliverCharge (" + "DeliverTypeID," + "AreaType," + "arrArea," + "Charge_Min," + "Weight_Min," + "ChargePerUnit," + "WeightPerUnit," + "Charge_Max) " + "values(" + "@DeliverTypeID," + "@AreaType," + "@arrArea," + "@Charge_Min," + "@Weight_Min," + "@ChargePerUnit," + "@WeightPerUnit," + "@Charge_Max)"; return(_DB.ExeSQLResult(strSQL, dict)); }
/// <summary> /// 把实体类转换成键/值对集合 /// </summary> /// <param name="entity"></param> /// <param name="dict"></param> private static void GetParameters(DeliverChargeEntity entity, Dictionary <string, object> dict) { dict.Add("ID", entity.ID); dict.Add("DeliverTypeID", entity.DeliverTypeID); dict.Add("AreaType", entity.AreaType); dict.Add("arrArea", entity.ArrArea); dict.Add("Charge_Min", entity.Charge_Min); dict.Add("Weight_Min", entity.Weight_Min); dict.Add("ChargePerUnit", entity.ChargePerUnit); dict.Add("WeightPerUnit", entity.WeightPerUnit); dict.Add("Charge_Max", entity.Charge_Max); }
/// <summary> /// 获取实体(异步方式) /// </summary> /// <param name="strWhere">参数化查询条件(例如: and Name = @Name )</param> /// <param name="dict">参数的名/值集合</param> /// <returns></returns> public virtual async Task <DeliverChargeEntity> GetEntityAsync(string strWhere, Dictionary <string, object> dict = null) { DeliverChargeEntity obj = null; string strSQL = "select top 1 * from DeliverCharge where 1=1 " + strWhere; using (NullableDataReader reader = await Task.Run(() => _DB.GetDataReader(strSQL, dict))) { if (reader.Read()) { obj = GetEntityFromrdr(reader); } } return(obj); }
/// <summary> /// 通过数据读取器生成实体类 /// </summary> /// <param name="rdr"></param> /// <returns></returns> private static DeliverChargeEntity GetEntityFromrdr(NullableDataReader rdr) { DeliverChargeEntity info = new DeliverChargeEntity(); info.ID = rdr.GetInt32("ID"); info.DeliverTypeID = rdr.GetInt32("DeliverTypeID"); info.AreaType = rdr.GetInt32("AreaType"); info.ArrArea = rdr.GetString("arrArea"); info.Charge_Min = rdr.GetDecimal("Charge_Min"); info.Weight_Min = rdr.GetDouble("Weight_Min"); info.ChargePerUnit = rdr.GetDecimal("ChargePerUnit"); info.WeightPerUnit = rdr.GetDouble("WeightPerUnit"); info.Charge_Max = rdr.GetDecimal("Charge_Max"); return(info); }
/// <summary> /// 更新一条记录(异步方式) /// </summary> /// <param name="entity">实体模型</param> /// <returns></returns> public virtual async Task <bool> UpdateAsync(DeliverChargeEntity entity) { Dictionary <string, object> dict = new Dictionary <string, object>(); GetParameters(entity, dict); string strSQL = "Update DeliverCharge SET " + "DeliverTypeID = @DeliverTypeID," + "AreaType = @AreaType," + "arrArea = @arrArea," + "Charge_Min = @Charge_Min," + "Weight_Min = @Weight_Min," + "ChargePerUnit = @ChargePerUnit," + "WeightPerUnit = @WeightPerUnit," + "Charge_Max = @Charge_Max" + " WHERE " + "ID = @ID"; return(await Task.Run(() => _DB.ExeSQLResult(strSQL, dict))); }
/// <summary> /// 增加或更新一条记录(异步方式) /// </summary> /// <param name="entity">实体模型</param> /// <param name="IsSave">是否增加</param> /// <returns></returns> public virtual async Task <bool> AddOrUpdateAsync(DeliverChargeEntity entity, bool IsSave) { return(IsSave ? await AddAsync(entity) : await UpdateAsync(entity)); }
/// <summary> /// 增加或更新一条记录 /// </summary> /// <param name="entity">实体模型</param> /// <param name="IsSave">是否增加</param> /// <returns></returns> public virtual bool AddOrUpdate(DeliverChargeEntity entity, bool IsSave) { return(IsSave ? Add(entity) : Update(entity)); }