首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

MVC3 关于修改时验证的有关问题

2013-10-27 
MVC3 关于修改时验证的问题难道我修改一个字段也要把其它字段都补全吗?或者只能关掉验证再开启? 例如我就

MVC3 关于修改时验证的问题
难道我修改一个字段也要把其它字段都补全吗?或者只能关掉验证再开启?
 例如我就修改密码这个字段,有其它方法的吗?

  User_Info user = da.User_Info.Find(u.Uid);
   user.Password = DecSecurity.Md5(model.NewPassword);
   da.SaveChanges();

报错:
{"对一个或多个实体的验证失败。有关详细信息,请参见“EntityValidationErrors”属性。"}

mvc
[解决办法]
引用:
难道我修改一个字段也要把其它字段都补全吗?或者只能关掉验证再开启?
 例如我就修改密码这个字段,有其它方法的吗?
  User_Info user = da.User_Info.Find(u.Uid);
   user.Password = DecSecurity.Md5(model.NewPassword);
   da.SaveChanges();

报错:
{"对一个或多个实体的验证失败。有关详细信息,请参见“EntityValidationErrors”属性。"}
加密后密码长度变得很长  可能你数据库里密码字段的长度问题吧
[解决办法]
调试看一下什么错误就行了!  估计是数据库里密码字段长度太短了
[解决办法]
http://blog.csdn.net/jys1216/article/details/12128321

提交的实体包含验证导致出现问题,那么保存可以先关闭验证

或者修改的提交实体为表单上可编辑的视图状态,字段对应,建立单独的编辑实体Model,后台一般是先验证提交实体的有效性,然后再进入库操作
[解决办法]
错误提示是你的实体的属性验证错误..... 可能填写的字符串的长度 太长了

你可以这样:修改一条数据的里面某个字段的时候:1,根据id把该条数据取出来  2. 设置该实体的“字段值=你要修改的值”  3. 把实体传回数据库更新
[解决办法]
引用:
Quote: 引用:

http://blog.csdn.net/jys1216/article/details/12128321

提交的实体包含验证导致出现问题,那么保存可以先关闭验证

或者修改的提交实体为表单上可编辑的视图状态,字段对应,建立单独的编辑实体Model,后台一般是先验证提交实体的有效性,然后再进入库操作

关闭验证会不会造成其它不良后果
User_Info作为Model,属性不要加数据注解,如[Required]等。可以创建一个ViewModel,例如:注册时候创建的一个UserViewModel 这时候加上数据注解,用于验证用户提交的表单。
[解决办法]
你也可以手动写SQL语句Update User_Info。去db的connectionstring 然后 var conn = new SqlConnection(cs); .........

热点排行