/// <summary> /// 增加一条数据,及其子表数据 /// </summary> public int Add(DTcms.Model.download model) { StringBuilder strSql = new StringBuilder(); strSql.Append("insert into dt_download("); strSql.Append("channel_id,title,category_id,link_url,img_url,seo_title,seo_keywords,seo_description,content,sort_id,click,is_msg,is_red,is_lock,add_time,digg_good,digg_act)"); strSql.Append(" values ("); strSql.Append("@channel_id,@title,@category_id,@link_url,@img_url,@seo_title,@seo_keywords,@seo_description,@content,@sort_id,@click,@is_msg,@is_red,@is_lock,@add_time,@digg_good,@digg_act)"); strSql.Append(";set @ReturnValue= @@IDENTITY"); SqlParameter[] parameters = { new SqlParameter("@channel_id", SqlDbType.Int, 4), new SqlParameter("@title", SqlDbType.NVarChar, 100), new SqlParameter("@category_id", SqlDbType.Int, 4), new SqlParameter("@link_url", SqlDbType.NVarChar, 255), new SqlParameter("@img_url", SqlDbType.NVarChar, 255), new SqlParameter("@seo_title", SqlDbType.NVarChar, 255), new SqlParameter("@seo_keywords", SqlDbType.NVarChar, 255), new SqlParameter("@seo_description", SqlDbType.NVarChar, 255), new SqlParameter("@content", SqlDbType.NText), new SqlParameter("@sort_id", SqlDbType.Int, 4), new SqlParameter("@click", SqlDbType.Int, 4), new SqlParameter("@is_msg", SqlDbType.TinyInt, 1), new SqlParameter("@is_red", SqlDbType.TinyInt, 1), new SqlParameter("@is_lock", SqlDbType.TinyInt, 1), new SqlParameter("@add_time", SqlDbType.DateTime), new SqlParameter("@digg_good", SqlDbType.Int, 4), new SqlParameter("@digg_act", SqlDbType.Int, 4), new SqlParameter("@ReturnValue", SqlDbType.Int) }; parameters[0].Value = model.channel_id; parameters[1].Value = model.title; parameters[2].Value = model.category_id; parameters[3].Value = model.link_url; parameters[4].Value = model.img_url; parameters[5].Value = model.seo_title; parameters[6].Value = model.seo_keywords; parameters[7].Value = model.seo_description; parameters[8].Value = model.content; parameters[9].Value = model.sort_id; parameters[10].Value = model.click; parameters[11].Value = model.is_msg; parameters[12].Value = model.is_red; parameters[13].Value = model.is_lock; parameters[14].Value = model.add_time; parameters[15].Value = model.digg_good; parameters[16].Value = model.digg_act; parameters[17].Direction = ParameterDirection.Output; List <CommandInfo> sqllist = new List <CommandInfo>(); CommandInfo cmd = new CommandInfo(strSql.ToString(), parameters); sqllist.Add(cmd); if (model.download_attachs != null) { StringBuilder strSql2; foreach (DTcms.Model.download_attach models in model.download_attachs) { strSql2 = new StringBuilder(); strSql2.Append("insert into dt_download_attach("); strSql2.Append("down_id,title,file_path,file_ext,file_size,down_num)"); strSql2.Append(" values ("); strSql2.Append("@down_id,@title,@file_path,@file_ext,@file_size,@down_num)"); SqlParameter[] parameters2 = { new SqlParameter("@down_id", SqlDbType.Int, 4), new SqlParameter("@title", SqlDbType.NVarChar, 255), new SqlParameter("@file_path", SqlDbType.NVarChar, 255), new SqlParameter("@file_ext", SqlDbType.NVarChar, 100), new SqlParameter("@file_size", SqlDbType.Int, 4), new SqlParameter("@down_num", SqlDbType.Int, 4) }; parameters2[0].Direction = ParameterDirection.InputOutput; parameters2[1].Value = models.title; parameters2[2].Value = models.file_path; parameters2[3].Value = models.file_ext; parameters2[4].Value = models.file_size; parameters2[5].Value = models.down_num; cmd = new CommandInfo(strSql2.ToString(), parameters2); sqllist.Add(cmd); } } DbHelperSQL.ExecuteSqlTranWithIndentity(sqllist); return((int)parameters[17].Value); }
/// <summary> /// 更新一条数据 /// </summary> public bool Update(DTcms.Model.download model) { using (SqlConnection conn = new SqlConnection(DbHelperSQL.connectionString)) { conn.Open(); using (SqlTransaction trans = conn.BeginTransaction()) { try { StringBuilder strSql = new StringBuilder(); strSql.Append("update dt_download set "); strSql.Append("channel_id=@channel_id,"); strSql.Append("title=@title,"); strSql.Append("category_id=@category_id,"); strSql.Append("link_url=@link_url,"); strSql.Append("img_url=@img_url,"); strSql.Append("seo_title=@seo_title,"); strSql.Append("seo_keywords=@seo_keywords,"); strSql.Append("seo_description=@seo_description,"); strSql.Append("content=@content,"); strSql.Append("sort_id=@sort_id,"); strSql.Append("click=@click,"); strSql.Append("is_msg=@is_msg,"); strSql.Append("is_red=@is_red,"); strSql.Append("is_lock=@is_lock,"); strSql.Append("add_time=@add_time,"); strSql.Append("digg_good=@digg_good,"); strSql.Append("digg_act=@digg_act"); strSql.Append(" where id=@id"); SqlParameter[] parameters = { new SqlParameter("@channel_id", SqlDbType.Int, 4), new SqlParameter("@title", SqlDbType.NVarChar, 100), new SqlParameter("@category_id", SqlDbType.Int, 4), new SqlParameter("@link_url", SqlDbType.NVarChar, 255), new SqlParameter("@img_url", SqlDbType.NVarChar, 255), new SqlParameter("@seo_title", SqlDbType.NVarChar, 255), new SqlParameter("@seo_keywords", SqlDbType.NVarChar, 255), new SqlParameter("@seo_description", SqlDbType.NVarChar, 255), new SqlParameter("@content", SqlDbType.NText), new SqlParameter("@sort_id", SqlDbType.Int, 4), new SqlParameter("@click", SqlDbType.Int, 4), new SqlParameter("@is_msg", SqlDbType.TinyInt, 1), new SqlParameter("@is_red", SqlDbType.TinyInt, 1), new SqlParameter("@is_lock", SqlDbType.TinyInt, 1), new SqlParameter("@add_time", SqlDbType.DateTime), new SqlParameter("@digg_good", SqlDbType.Int, 4), new SqlParameter("@digg_act", SqlDbType.Int, 4), new SqlParameter("@id", SqlDbType.Int, 4) }; parameters[0].Value = model.channel_id; parameters[1].Value = model.title; parameters[2].Value = model.category_id; parameters[3].Value = model.link_url; parameters[4].Value = model.img_url; parameters[5].Value = model.seo_title; parameters[6].Value = model.seo_keywords; parameters[7].Value = model.seo_description; parameters[8].Value = model.content; parameters[9].Value = model.sort_id; parameters[10].Value = model.click; parameters[11].Value = model.is_msg; parameters[12].Value = model.is_red; parameters[13].Value = model.is_lock; parameters[14].Value = model.add_time; parameters[15].Value = model.digg_good; parameters[16].Value = model.digg_act; parameters[17].Value = model.id; DbHelperSQL.ExecuteSql(conn, trans, strSql.ToString(), parameters); //删除已删除的附件 DeleteAttachList(conn, trans, model.download_attachs, model.id); #region 添加/修改附件 if (model.download_attachs != null) { StringBuilder strSql2; foreach (Model.download_attach models in model.download_attachs) { strSql2 = new StringBuilder(); if (models.id > 0) { strSql2.Append("update dt_download_attach set "); strSql2.Append("down_id=@down_id,"); strSql2.Append("title=@title,"); strSql2.Append("file_path=@file_path,"); strSql2.Append("file_ext=@file_ext,"); strSql2.Append("file_size=@file_size,"); strSql2.Append("down_num=@down_num"); strSql2.Append(" where id=@id"); SqlParameter[] parameters2 = { new SqlParameter("@down_id", SqlDbType.Int, 4), new SqlParameter("@title", SqlDbType.NVarChar, 255), new SqlParameter("@file_path", SqlDbType.NVarChar, 255), new SqlParameter("@file_ext", SqlDbType.NVarChar, 100), new SqlParameter("@file_size", SqlDbType.Int, 4), new SqlParameter("@down_num", SqlDbType.Int, 4), new SqlParameter("@id", SqlDbType.Int, 4) }; parameters2[0].Value = models.down_id; parameters2[1].Value = models.title; parameters2[2].Value = models.file_path; parameters2[3].Value = models.file_ext; parameters2[4].Value = models.file_size; parameters2[5].Value = models.down_num; parameters2[6].Value = models.id; DbHelperSQL.ExecuteSql(conn, trans, strSql2.ToString(), parameters2); } else { strSql2.Append("insert into dt_download_attach("); strSql2.Append("down_id,title,file_path,file_ext,file_size)"); strSql2.Append(" values ("); strSql2.Append("@down_id,@title,@file_path,@file_ext,@file_size)"); SqlParameter[] parameters2 = { new SqlParameter("@down_id", SqlDbType.Int, 4), new SqlParameter("@title", SqlDbType.NVarChar, 255), new SqlParameter("@file_path", SqlDbType.NVarChar, 255), new SqlParameter("@file_ext", SqlDbType.NVarChar, 100), new SqlParameter("@file_size", SqlDbType.Int, 4) }; parameters2[0].Value = models.down_id; parameters2[1].Value = models.title; parameters2[2].Value = models.file_path; parameters2[3].Value = models.file_ext; parameters2[4].Value = models.file_size; DbHelperSQL.ExecuteSql(conn, trans, strSql2.ToString(), parameters2); } } } #endregion trans.Commit(); } catch { trans.Rollback(); return(false); } } } return(true); }