在web开发框架中dropdownlist绑定值出现未将对象引用设置到对象的实例的问题是怎么回事

在开发项目中dropdownlist控件是常用到的控件,它的值的绑定是件比较复杂的事情,所以需要我们仔细且知道它的相关技能点( 深入Web框架-JQuey对CheckBox、RadioButton和DropDownList值操作和事件),要不然很容易出错,在web开发框架中dropdownlist绑定值出现未将对象引用设置到对象的实例的问题是怎么回事?

问题

定位

解决

问题

在项目开发中笔者经常出现下面的错误,和大家共勉:

问题现象

定位

大家看红色框中的提示,绑定selectlist值的是时候报引用Null错误,这个很清楚是我给dropdownlist的绑定值为Null引起的,看下我们前后端的代码:

web前端cshtml页面

@Html.LocalizedDropDownListFor(model => model.BelongedListsTitles, (IList<SelectListItem>)ViewBag.BelongedLists, 
Model.BelongedListsTitles, "", new { @class = "form-control" })


开发框架后台代码

    List<BelongedLists> belongedLists = _belongedListsService.GetAllBelongedLists();
List<SelectListItem> belongedListVB = new List<SelectListItem>();
belongedLists.ForEach(t => { belongedListVB.Add(new SelectListItem { Value = t.Name.ToString(), Text = t.Link }); });
ViewBag.BelongedLists = belongedListVB;

解决

我们可以看到前后端代码的差异,LocalizedDropDownListFor的绑值参数为ViewBag.RelatedLists,而后台赋值参数为ViewBag.BelongedListsTitle,页面执行代码的时候肯定会被报null的错误, 我们把前后端改为一致就可以了。这个在开发中经常会碰到,特别是我们使用dropdownlist控件的相关属性有名称改变时要特别关注下下。

在web开发框架中dropdownlist绑定值出现未将对象引用设置到对象的实例的问题是怎么回事?


网站&系统开发技术学习交流群:463167176

本站文章除注明转载外,均为本站原创或翻译,欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,共创和谐网络环境。
转载请注明:文章转载自:华晨软件-云微开发平台 » 在web开发框架中dropdownlist绑定值出现未将对象引用设置到对象的实例的问题是怎么回事
本文标题:在web开发框架中dropdownlist绑定值出现未将对象引用设置到对象的实例的问题是怎么回事
本文地址:http://www.hocode.com/QAPrefecture/0016.html

相关文章: 深入Web框架-DropDownList的常见错误

电话
电话 18718672256

扫一扫
二维码