asp.net-mvc – ASP.NET MVC下拉列表
发布时间:2020-12-16 04:16:21 所属栏目:asp.Net 来源:网络整理
导读:有人能指出我的文章,显示从 linq到sql(正在设置的文本和值)填充的下拉列表. 谢谢 丹尼 解决方法 现在 HtmlHelper扩展采用IEnumerable SelectListItem,我不创建SelectList,但通常只是用LINQ创建SelectListItems. 调节器 ViewData["CategoryID"] = categories.
有人能指出我的文章,显示从
linq到sql(正在设置的文本和值)填充的下拉列表.
谢谢 解决方法
现在
HtmlHelper扩展采用IEnumerable< SelectListItem>,我不创建SelectList,但通常只是用LINQ创建SelectListItems.
调节器 ViewData["CategoryID"] = categories.Select( c => new SelectListItem { Text = c.CategoryName,Value = c.CategoryID } ); 视图 <%= Html.DropDownList("CategoryID") %> 或者如果我想要默认选择 <%= Html.DropDownList("CategoryID",(IEnumerable<SelectListItem>)ViewData["CategoryID"],"Select a Category" ) %> 编辑: 下拉列表中有趣的一点是,您需要提供一系列值,从中选择适合您实际数据模型的单个值.我通常通过视图数据提供范围(菜单项),并期望在发布页面时返回模型值.如果您也想要强类型菜单,则需要提供一个仅包含视图的模型来封装您的真实模型和任何菜单.这将涉及在发布时使用前缀来标识模型元素.在我看来,权衡是对帖子的简单模型绑定与在视图中使用强类型菜单.我没有挂在后者上,所以我选择不把我的菜单放在模型中.但是,如果您想这样做,它可能如下所示. 模型 public class CategoryViewModel { public Category Category { get; set; } public IEnumerable<SelectListItem> CategoryMenu { get; set; } ... } 调节器 显示动作 var model = new CategoryViewModel(); model.CategoryMenu = categories.Select( c => new SelectListItem { Text = c.CategoryName,Value = c.CategoryID } ); ... return View(model); 创建行动 [AcceptVerbs( HttpVerbs.Post )] public ActionResult Create( [Bind(Prefix="Category")]Category category ) { ... } 视图 <%= Html.TextBox("Category.Name") %> <%= Html.DropDownList("Category.CategoryID",Model.CategoryMenu,"Select a Category" ) %> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – PushStreamContent没有发送最终的零长度块来表示
- asp.net – Web.Config无法呈现特殊字符
- model-view-controller – MVC2 ViewData问题
- asp.net – 如何为外部依赖项使用依赖注入?
- asp.net-mvc – 从Html.RouteLink生成绝对URL
- 如何在ASP.NET中隐藏页面名称和查询字符串?
- asp.net-mvc – ASP.NET MVC – 动态授权
- 在ASP经典中编写JavaScript
- asp.net-mvc – 如何防止HttpUnauthorizedResult(401)重定向
- asp.net-mvc – ASP.NET MVC中的全局错误处理(控制器之外)
推荐文章
站长推荐
- asp.net – 我们可以用IIS运行Selenium WebDrive
- entity-framework – 在viewbag中传递查询结果
- Asp.Net(vb)在代码隐藏中强制回发
- asp.net – VS2010中每个发布配置文件的不同连接
- ASP.NET MVC&C#:HttpStatusCodeResult()vs
- asp.net-mvc-3 – 使用mvc3下拉列表进行jquery自
- asp.net-mvc-3 – [显示(提示MVC3
- asp.net – 诊断“请求超时”HttpExceptions
- asp.net-core-mvc – 什么是Asp.Net Core MVC中的
- asp.net-mvc-3 – RoleProvider不能与服务器上的
热点阅读