/// <summary> /// 获取实体(异步方式) /// </summary> /// <param name="strWhere">参数化查询条件(例如: and Name = @Name )</param> /// <param name="dict">参数的名/值集合</param> /// <returns></returns> public virtual async Task <StatYearEntity> GetEntityAsync(string strWhere, Dictionary <string, object> dict = null) { StatYearEntity obj = null; string strSQL = "select top 1 * from StatYear 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(StatYearEntity entity, Dictionary <string, object> dict) { dict.Add("D1", entity.D1); dict.Add("D2", entity.D2); dict.Add("D3", entity.D3); dict.Add("D4", entity.D4); dict.Add("D5", entity.D5); dict.Add("D6", entity.D6); dict.Add("D7", entity.D7); dict.Add("D8", entity.D8); dict.Add("D9", entity.D9); dict.Add("D10", entity.D10); dict.Add("D11", entity.D11); dict.Add("D12", entity.D12); dict.Add("TYear", entity.TYear); }
/// <summary> /// 通过数据读取器生成实体类 /// </summary> /// <param name="rdr"></param> /// <returns></returns> private static StatYearEntity GetEntityFromrdr(NullableDataReader rdr) { StatYearEntity info = new StatYearEntity(); info.D1 = rdr.GetInt32("D1"); info.D2 = rdr.GetInt32("D2"); info.D3 = rdr.GetInt32("D3"); info.D4 = rdr.GetInt32("D4"); info.D5 = rdr.GetInt32("D5"); info.D6 = rdr.GetInt32("D6"); info.D7 = rdr.GetInt32("D7"); info.D8 = rdr.GetInt32("D8"); info.D9 = rdr.GetInt32("D9"); info.D10 = rdr.GetInt32("D10"); info.D11 = rdr.GetInt32("D11"); info.D12 = rdr.GetInt32("D12"); info.TYear = rdr.GetString("TYear"); return(info); }
/// <summary> /// 增加一条记录,返回新的ID号。需要有一个单一主键,并且开启有标识符属性(异步方式) /// </summary> /// <param name="entity">实体模型</param> /// <returns></returns> public virtual async Task <int> InsertAsync(StatYearEntity entity) { Dictionary <string, object> dict = new Dictionary <string, object>(); GetParameters(entity, dict); string strSQL = "insert into StatYear (" + "D1," + "D2," + "D3," + "D4," + "D5," + "D6," + "D7," + "D8," + "D9," + "D10," + "D11," + "D12," + "TYear) " + "values(" + "@D1," + "@D2," + "@D3," + "@D4," + "@D5," + "@D6," + "@D7," + "@D8," + "@D9," + "@D10," + "@D11," + "@D12," + "@TYear)"; if (await Task.Run(() => _DB.ExeSQLResult(strSQL, dict))) { return(DataConverter.CLng(entity.TYear)); } return(-1); }
/// <summary> /// 增加一条记录 /// </summary> /// <param name="entity">实体模型</param> /// <returns></returns> public virtual bool Add(StatYearEntity entity) { Dictionary <string, object> dict = new Dictionary <string, object>(); GetParameters(entity, dict); string strSQL = "insert into StatYear (" + "D1," + "D2," + "D3," + "D4," + "D5," + "D6," + "D7," + "D8," + "D9," + "D10," + "D11," + "D12," + "TYear) " + "values(" + "@D1," + "@D2," + "@D3," + "@D4," + "@D5," + "@D6," + "@D7," + "@D8," + "@D9," + "@D10," + "@D11," + "@D12," + "@TYear)"; return(_DB.ExeSQLResult(strSQL, dict)); }
/// <summary> /// 更新一条记录(异步方式) /// </summary> /// <param name="entity">实体模型</param> /// <returns></returns> public virtual async Task <bool> UpdateAsync(StatYearEntity entity) { Dictionary <string, object> dict = new Dictionary <string, object>(); GetParameters(entity, dict); string strSQL = "Update StatYear SET " + "D1 = @D1," + "D2 = @D2," + "D3 = @D3," + "D4 = @D4," + "D5 = @D5," + "D6 = @D6," + "D7 = @D7," + "D8 = @D8," + "D9 = @D9," + "D10 = @D10," + "D11 = @D11," + "D12 = @D12" + " WHERE " + "TYear = @TYear"; 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(StatYearEntity 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(StatYearEntity entity, bool IsSave) { return(IsSave ? Add(entity) : Update(entity)); }