/// <summary> /// 增加一条记录,返回新的ID号。需要有一个单一主键,并且开启有标识符属性(异步方式) /// </summary> /// <param name="entity">实体模型</param> /// <returns></returns> public virtual async Task <int> InsertAsync(PresentProjectEntity entity) { Dictionary <string, object> dict = new Dictionary <string, object>(); GetParameters(entity, dict); string strSQL = "insert into PresentProject (" + "ProjectName," + "BeginDate," + "EndDate," + "MinMoney," + "MaxMoney," + "PresentContent," + "Price," + "PresentID," + "Cash," + "PresentExp," + "PresentPoint," + "IsDisabled) " + "values(" + "@ProjectName," + "@BeginDate," + "@EndDate," + "@MinMoney," + "@MaxMoney," + "@PresentContent," + "@Price," + "@PresentID," + "@Cash," + "@PresentExp," + "@PresentPoint," + "@IsDisabled)"; return(await Task.Run(() => _DB.ReturnID(strSQL, dict))); }
/// <summary> /// 增加一条记录 /// </summary> /// <param name="entity">实体模型</param> /// <returns></returns> public virtual bool Add(PresentProjectEntity entity) { Dictionary <string, object> dict = new Dictionary <string, object>(); GetParameters(entity, dict); string strSQL = "insert into PresentProject (" + "ProjectName," + "BeginDate," + "EndDate," + "MinMoney," + "MaxMoney," + "PresentContent," + "Price," + "PresentID," + "Cash," + "PresentExp," + "PresentPoint," + "IsDisabled) " + "values(" + "@ProjectName," + "@BeginDate," + "@EndDate," + "@MinMoney," + "@MaxMoney," + "@PresentContent," + "@Price," + "@PresentID," + "@Cash," + "@PresentExp," + "@PresentPoint," + "@IsDisabled)"; return(_DB.ExeSQLResult(strSQL, dict)); }
/// <summary> /// 获取实体(异步方式) /// </summary> /// <param name="strWhere">参数化查询条件(例如: and Name = @Name )</param> /// <param name="dict">参数的名/值集合</param> /// <returns></returns> public virtual async Task <PresentProjectEntity> GetEntityAsync(string strWhere, Dictionary <string, object> dict = null) { PresentProjectEntity obj = null; string strSQL = "select top 1 * from PresentProject 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="entity"></param> /// <param name="dict"></param> private static void GetParameters(PresentProjectEntity entity, Dictionary <string, object> dict) { dict.Add("ProjectID", entity.ProjectID); dict.Add("ProjectName", entity.ProjectName); dict.Add("BeginDate", entity.BeginDate); dict.Add("EndDate", entity.EndDate); dict.Add("MinMoney", entity.MinMoney); dict.Add("MaxMoney", entity.MaxMoney); dict.Add("PresentContent", entity.PresentContent); dict.Add("Price", entity.Price); dict.Add("PresentID", entity.PresentID); dict.Add("Cash", entity.Cash); dict.Add("PresentExp", entity.PresentExp); dict.Add("PresentPoint", entity.PresentPoint); dict.Add("IsDisabled", entity.IsDisabled); }
/// <summary> /// 通过数据读取器生成实体类 /// </summary> /// <param name="rdr"></param> /// <returns></returns> private static PresentProjectEntity GetEntityFromrdr(NullableDataReader rdr) { PresentProjectEntity info = new PresentProjectEntity(); info.ProjectID = rdr.GetInt32("ProjectID"); info.ProjectName = rdr.GetString("ProjectName"); info.BeginDate = rdr.GetNullableDateTime("BeginDate"); info.EndDate = rdr.GetNullableDateTime("EndDate"); info.MinMoney = rdr.GetDecimal("MinMoney"); info.MaxMoney = rdr.GetDecimal("MaxMoney"); info.PresentContent = rdr.GetString("PresentContent"); info.Price = rdr.GetDecimal("Price"); info.PresentID = rdr.GetString("PresentID"); info.Cash = rdr.GetDecimal("Cash"); info.PresentExp = rdr.GetInt32("PresentExp"); info.PresentPoint = rdr.GetInt32("PresentPoint"); info.IsDisabled = rdr.GetBoolean("IsDisabled"); return(info); }
/// <summary> /// 更新一条记录(异步方式) /// </summary> /// <param name="entity">实体模型</param> /// <returns></returns> public virtual async Task <bool> UpdateAsync(PresentProjectEntity entity) { Dictionary <string, object> dict = new Dictionary <string, object>(); GetParameters(entity, dict); string strSQL = "Update PresentProject SET " + "ProjectName = @ProjectName," + "BeginDate = @BeginDate," + "EndDate = @EndDate," + "MinMoney = @MinMoney," + "MaxMoney = @MaxMoney," + "PresentContent = @PresentContent," + "Price = @Price," + "PresentID = @PresentID," + "Cash = @Cash," + "PresentExp = @PresentExp," + "PresentPoint = @PresentPoint," + "IsDisabled = @IsDisabled" + " WHERE " + "ProjectID = @ProjectID"; 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(PresentProjectEntity 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(PresentProjectEntity entity, bool IsSave) { return(IsSave ? Add(entity) : Update(entity)); }