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