/// <summary> /// 更新一条记录(异步方式) /// </summary> /// <param name="entity">实体模型</param> /// <returns></returns> public virtual async Task <bool> UpdateAsync(SpecialsEntity entity) { Dictionary <string, object> dict = new Dictionary <string, object>(); GetParameters(entity, dict); string strSQL = "Update Specials SET " + "SpecialName = @SpecialName," + "SpecialCategoryID = @SpecialCategoryID," + "SpecialDir = @SpecialDir," + "SpecialIdentifier = @SpecialIdentifier," + "SpecialPic = @SpecialPic," + "SpecialTips = @SpecialTips," + "SpecialTemplatePath = @SpecialTemplatePath," + "IsElite = @IsElite," + "OrderSort = @OrderSort," + "OpenType = @OpenType," + "Description = @Description," + "IsCreateListPage = @IsCreateListPage," + "ListPageSavePathType = @ListPageSavePathType," + "ListPagePostfix = @ListPagePostfix," + "Custom_Content = @Custom_Content," + "SearchTemplatePath = @SearchTemplatePath," + "IsNeedCreateHtml = @IsNeedCreateHtml" + " WHERE " + "SpecialID = @SpecialID"; return(await Task.Run(() => _DB.ExeSQLResult(strSQL, dict))); }
/// <summary> /// 增加一条记录,返回新的ID号。需要有一个单一主键,并且开启有标识符属性(异步方式) /// </summary> /// <param name="entity">实体模型</param> /// <returns></returns> public virtual async Task <int> InsertAsync(SpecialsEntity entity) { if (entity.SpecialID <= 0) { entity.SpecialID = GetNewID(); } Dictionary <string, object> dict = new Dictionary <string, object>(); GetParameters(entity, dict); string strSQL = "insert into Specials (" + "SpecialID," + "SpecialName," + "SpecialCategoryID," + "SpecialDir," + "SpecialIdentifier," + "SpecialPic," + "SpecialTips," + "SpecialTemplatePath," + "IsElite," + "OrderSort," + "OpenType," + "Description," + "IsCreateListPage," + "ListPageSavePathType," + "ListPagePostfix," + "Custom_Content," + "SearchTemplatePath," + "IsNeedCreateHtml) " + "values(" + "@SpecialID," + "@SpecialName," + "@SpecialCategoryID," + "@SpecialDir," + "@SpecialIdentifier," + "@SpecialPic," + "@SpecialTips," + "@SpecialTemplatePath," + "@IsElite," + "@OrderSort," + "@OpenType," + "@Description," + "@IsCreateListPage," + "@ListPageSavePathType," + "@ListPagePostfix," + "@Custom_Content," + "@SearchTemplatePath," + "@IsNeedCreateHtml)"; if (await Task.Run(() => _DB.ExeSQLResult(strSQL, dict))) { return(DataConverter.CLng(entity.SpecialID)); } return(-1); }
/// <summary> /// 获取实体(异步方式) /// </summary> /// <param name="strWhere">参数化查询条件(例如: and Name = @Name )</param> /// <param name="dict">参数的名/值集合</param> /// <returns></returns> public virtual async Task <SpecialsEntity> GetEntityAsync(string strWhere, Dictionary <string, object> dict = null) { SpecialsEntity obj = null; string strSQL = "select top 1 * from Specials 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(SpecialsEntity entity, Dictionary <string, object> dict) { dict.Add("SpecialID", entity.SpecialID); dict.Add("SpecialName", entity.SpecialName); dict.Add("SpecialCategoryID", entity.SpecialCategoryID); dict.Add("SpecialDir", entity.SpecialDir); dict.Add("SpecialIdentifier", entity.SpecialIdentifier); dict.Add("SpecialPic", entity.SpecialPic); dict.Add("SpecialTips", entity.SpecialTips); dict.Add("SpecialTemplatePath", entity.SpecialTemplatePath); dict.Add("IsElite", entity.IsElite); dict.Add("OrderSort", entity.OrderSort); dict.Add("OpenType", entity.OpenType); dict.Add("Description", entity.Description); dict.Add("IsCreateListPage", entity.IsCreateListPage); dict.Add("ListPageSavePathType", entity.ListPageSavePathType); dict.Add("ListPagePostfix", entity.ListPagePostfix); dict.Add("Custom_Content", entity.Custom_Content); dict.Add("SearchTemplatePath", entity.SearchTemplatePath); dict.Add("IsNeedCreateHtml", entity.IsNeedCreateHtml); }
/// <summary> /// 通过数据读取器生成实体类 /// </summary> /// <param name="rdr"></param> /// <returns></returns> private static SpecialsEntity GetEntityFromrdr(NullableDataReader rdr) { SpecialsEntity info = new SpecialsEntity(); info.SpecialID = rdr.GetInt32("SpecialID"); info.SpecialName = rdr.GetString("SpecialName"); info.SpecialCategoryID = rdr.GetInt32("SpecialCategoryID"); info.SpecialDir = rdr.GetString("SpecialDir"); info.SpecialIdentifier = rdr.GetString("SpecialIdentifier"); info.SpecialPic = rdr.GetString("SpecialPic"); info.SpecialTips = rdr.GetString("SpecialTips"); info.SpecialTemplatePath = rdr.GetString("SpecialTemplatePath"); info.IsElite = rdr.GetBoolean("IsElite"); info.OrderSort = rdr.GetInt32("OrderSort"); info.OpenType = rdr.GetInt32("OpenType"); info.Description = rdr.GetString("Description"); info.IsCreateListPage = rdr.GetBoolean("IsCreateListPage"); info.ListPageSavePathType = rdr.GetInt32("ListPageSavePathType"); info.ListPagePostfix = rdr.GetString("ListPagePostfix"); info.Custom_Content = rdr.GetString("Custom_Content"); info.SearchTemplatePath = rdr.GetString("SearchTemplatePath"); info.IsNeedCreateHtml = rdr.GetBoolean("IsNeedCreateHtml"); return(info); }
/// <summary> /// 增加或更新一条记录(异步方式) /// </summary> /// <param name="entity">实体模型</param> /// <param name="IsSave">是否增加</param> /// <returns></returns> public virtual async Task <bool> AddOrUpdateAsync(SpecialsEntity 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(SpecialsEntity entity, bool IsSave) { return(IsSave ? Add(entity) : Update(entity)); }