最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

解决asp.net mvc UpdateModel更新对象后出现null问题的方法

来源:动视网 责编:小采 时间:2020-11-27 22:38:05
文档

解决asp.net mvc UpdateModel更新对象后出现null问题的方法

解决asp.net mvc UpdateModel更新对象后出现null问题的方法:在用asp.net mvc 4.0做项目的时候遇到的这种情况: 情况分析: 在填写表单的时候,有一些表单没有填写,留空,然后直接post 提交表单,action中用UpdateModel 来更新model,结果发现那些没有填写的表单字段全部变成null。 原因分析: 项目中做了判断
推荐度:
导读解决asp.net mvc UpdateModel更新对象后出现null问题的方法:在用asp.net mvc 4.0做项目的时候遇到的这种情况: 情况分析: 在填写表单的时候,有一些表单没有填写,留空,然后直接post 提交表单,action中用UpdateModel 来更新model,结果发现那些没有填写的表单字段全部变成null。 原因分析: 项目中做了判断


在用asp.net mvc 4.0做项目的时候遇到的这种情况:
情况分析:
“在填写表单的时候,有一些表单没有填写,留空,然后直接post 提交表单,action中用UpdateModel 来更新model,结果发现那些没有填写的表单字段全部变成null。”
原因分析:
项目中做了判断null不能提交更新到数据库中,所以导致一直提交不上去
后来网上查了一下找到了解决办法,我在这里分享一下,方便以后遇到这种情况的朋友可以方便解决
解决方法:
新建一个类继承DefaultModelBinder

using System.ComponentModel;
using System.Web.Mvc;
namespace CustomerWebsite.Mvc
{
 public sealed class EmptyStringToNullModelBinder : DefaultModelBinder
 {
 protected override void SetProperty(ControllerContext controllerContext,
 ModelBindingContext bindingContext, PropertyDescriptor propertyDescriptor, object value)
 {
 if (value == null && propertyDescriptor.PropertyType == typeof(string))
 {
 value = string.Empty;
 }

 base.SetProperty(controllerContext, bindingContext, propertyDescriptor, value);
 }
 }
}

然后在Global.asax的Application_Start中替换DefaultModelBinder

ModelBinders.Binders.DefaultBinder = new EmptyStringToNullModelBinder();

这样问题就可以解决了,小编也尝试进行了操作,结果成功了,希望也能帮助这方面有困扰的童鞋解决实际问题。

文档

解决asp.net mvc UpdateModel更新对象后出现null问题的方法

解决asp.net mvc UpdateModel更新对象后出现null问题的方法:在用asp.net mvc 4.0做项目的时候遇到的这种情况: 情况分析: 在填写表单的时候,有一些表单没有填写,留空,然后直接post 提交表单,action中用UpdateModel 来更新model,结果发现那些没有填写的表单字段全部变成null。 原因分析: 项目中做了判断
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top