首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >将view袋int值分配给Html Helper下拉列表

将view袋int值分配给Html Helper下拉列表
EN

Stack Overflow用户
提问于 2019-08-30 06:45:38
回答 1查看 128关注 0票数 0

我试图将视图包中的int值赋值给下拉列表。

视图

代码语言:javascript
代码运行次数:0
运行
复制
@Html.DropDownListFor(m => m.nStatusID, ViewBag.ReasonTypeList asSelectList,ViewBag.nStatusID, new { @class = "form-control" })

控制员的行动包括-

代码语言:javascript
代码运行次数:0
运行
复制
var Complaint = db.ComplaintRegistrations.SingleOrDefault(x => x.nCallID == id);
ViewBag.nStatusID = Complaint.nStatusID;
List<ReasonTypeMaster> ReasonTypeList = db.ReasonType.ToList();
ViewBag.ReasonTypeList = new SelectList(ReasonTypeList, "nReasonTypeID", "cReasonType");

错误--“System.Web.Mvc.HtmlHelper”没有名为“DropDownListFor”的适用方法,但似乎有一个名为“DropDownListFor”的扩展方法。不能动态地分派扩展方法。考虑转换动态参数,或者在不使用extension语法的情况下调用扩展方法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-30 06:51:30

看起来,您想要设置下拉列表的选定值,因为您需要在模型对象中设置它,助手将负责设置为selected。试着像:

代码语言:javascript
代码运行次数:0
运行
复制
var Complaint = db.ComplaintRegistrations.SingleOrDefault(x => x.nCallID == id);
if(Complaint != null)
    model.nStatusID = Complaint.nStatusID;

List<ReasonTypeMaster> ReasonTypeList = db.ReasonType.ToList();
ViewBag.ReasonTypeList = new SelectList(ReasonTypeList, "nReasonTypeID", "cReasonType");

return View(model);

在你看来,你只需要:

代码语言:javascript
代码运行次数:0
运行
复制
@Html.DropDownListFor(m => m.nStatusID, 
                      ViewBag.ReasonTypeList asSelectList, 
                      new { @class = "form-control" })

m.nStatusID将具有在控制器操作中设置的值,并将填充在下拉元素中选择的值。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57721790

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档