日期:2014-05-19  浏览次数:20398 次

GridView 修改密码
请问怎么用:GridView在编辑模式下:
修改密码,如果没有填,就不修改啊?
如果不为空,还要进行MD5加密。

我想在SqlDataSource的Updating事件中加入以下方法,一直没有成功。
代码如下:

protected   void   SqlDataSource_admin_OnUpdating(object   sender,SqlDataSourceCommandEventArgs   e)
        {
                string   str   =   ((TextBox)GridView_admin.Rows[GridView_rows].Cells[1].FindControl( "TextBox_password ")).Text.Trim();
                if   (str   ==   " ")
                {
                        SqlDataSource_admin.UpdateCommand   =   "UPDATE   admin   SET   admin_name   =   @admin_name,   admin_droit   =   @admin_droit,   admin_qq   =   @admin_qq,   admin_tel   =   @admin_tel,   admin_email   =   @admin_email   WHERE   (admin_id   =   @admin_id) ";   //修改SQL语句,不进行密码的更新。
                }
                else
                {
                        e.Command.Parameters[ "@admin_password "].Value   =   lzx.MD5(str);   //lzx是我自己写的一个类,加密没问题。
                       
                }
        }

------解决方案--------------------
GridView里多加一个隐藏表单,存原来密码的。
然后判断str为空的话,取原来密码那个控件的值,如果不为空,取新的密码加密值。