DAL层修改sql表数据
                        
                            时间:2021-07-01 10:21:17
                            帮助过:24人阅读
							                        
                     
                    
                    
                             //编辑
 2         public int Update(Dictionary<
string, 
object> par, 
long uid)
 3         {
 4             if (par.Count == 
0) 
return 0;
 5             StringBuilder Sql = 
new StringBuilder();
 6             Sql.Append(
"UPDATE uc_user SET ");
 7             SqlParameter[] pars = 
new SqlParameter[par.Count + 
1];
 8             string[] fields = 
new string[par.Count];
 9             int index = 
0;
10             foreach (
string name 
in par.Keys)
11             {
12                 Sql.AppendFormat(
"[" + name + 
"] =@p_{0},", index);
13                 pars[index] = 
new SqlParameter(
"@p_" +
 index.ToString(), par[name]);
14                 index++
;
15             }
16             Sql.Remove(Sql.Length - 
1, 
1);
17             Sql.Append(
" WHERE ");
18             Sql.Append(
"[UID] = @p_" +
 index.ToString());
19             pars[index] = 
new SqlParameter(
"@p_" +
 index.ToString(), uid);
20             index++
;
21             return SqlHelper.ExecuteNonQuery(ConnectionString, CommandType.Text, Sql.ToString(), pars);
22         }
修改用户名,BLL层只需要传入对应的密码
 1         public static int Update(Dictionary<string, object> par, long AUID)
 2         {
 3             return dal.Update(par, AUID);
 4         }
 5 
 6         public static int EditPwd(string Pwd, long Auid)
 7         {
 8             Dictionary<string, object> dic = new Dictionary<string, object>();
 9             dic.Add("UserPassword", Utils.MD5(Pwd));
10             return Update(dic, Auid);
11         }
然后web层调用就行
1 BLL.Uc.UserB2B.EditPwd(newpwd, CurrentUser.UID);
因为是字典循环调用,固传入修改的什么列,就修改什么列,条件自己定义,很灵活
 
DAL层修改sql表数据
标签:man   ret   stringbu   ict   pen   end   name   循环   add