添加新增 删除旧的 避免id自增过多

     ///   <summary>
        
///   编辑关联分类 的属性 添加新值删除去掉的值
        
///   </summary>
        
///   <param name="IListNew"> 最新的分类信息 </param>
        
///   <returns> 是否更新成功 </returns>
         public   bool  Update(IList < CategoryAttributeInfo >  IListNew,  int  categoryID)
        {
            IList
< CategoryAttributeInfo >  IListOld  =   new  List < CategoryAttributeInfo > (); // 取出数据库里的分类
            IList < CategoryAttributeInfo >  IListDel  =   new  List < CategoryAttributeInfo > (); // 待删除的
            IList < CategoryAttributeInfo >  IListAdd  =   new  List < CategoryAttributeInfo > (); // 待添加的

            IListOld 
=  GetCategoryAttributeInfoList( " CategoryID= "   +  categoryID,  "" );


            
// 对比取出 那些该删除 那些该添加
             foreach  (CategoryAttributeInfo iListOld  in  IListOld)
            {
                
if  (IListNew.Contains(iListOld))
                {
                    IListNew.Remove(iListOld);
                }
                
else
                {
                    IListDel.Add(iListOld);
                }

            }
            IListAdd 
=  IListNew;

            
using  (SqlTransaction sqlTran  =  SqlHelper.BeginTransaction())
            {
                
try
                {
                    
foreach  (CategoryAttributeInfo CategoryAttributeInfo  in  IListDel)
                    {
                        SqlHelper.ExecuteNonQuery(sqlTran, 
" delete  from t_CategoryAttribute where ID= "   +  CategoryAttributeInfo.ID,  null );
                    }

                    
// 添加新增的 分类属性
                     foreach  (CategoryAttributeInfo CategoryAttributeInfo  in  IListAdd)
                    {
                        Add(CategoryAttributeInfo);
                    }

                    sqlTran.Commit();
                    
return   true ;

                }
                
catch
                {
                    sqlTran.Rollback();
                    
return   false ;
                }
            }

        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值