文档章节

ASP.NET MVC4.0 DropDownListFor 设置默认选项

KavenSu
 KavenSu
发布于 2014/08/27 20:39
字数 206
阅读 5808
收藏 1

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

public ActionResult Edit(long id = 0)
        {
            Post post = db.Post.Find(id);
            if (post == null)
            {
                return HttpNotFound();
            }
            ViewBag.content = post.content;
            ViewBag.cates = new SelectList(db.PostCate, "id", "name", post.cate_id);
            ViewBag.updetp = new SelectList(db.Bank, "id", "name", post.updept_id);
            var ds = from d in db.Department
                        where d.updep == post.updept_id
                        select new { d.id, d.name };

            ViewBag.depts = new SelectList(ds, "id", "name", post.dept_id);
            return View("~/Views/Post/Edit.cshtml", post);
        }
<p>

                    <label for="cate_id">类别:</label>

                    @Html.DropDownListFor(model=>model.cate_id, ViewBag.cates as IEnumerable<SelectListItem>)

                    @Html.ValidationMessage("cate_id", "请选择公告类型")

                </p>

                <p>

                    <label for="updetp">分行:</label>

                    @Html.DropDownListFor(model=>model.updept_id, ViewBag.updetp as IEnumerable<SelectListItem>, String.Empty, new { style = "width:180px" })

                    @Html.ValidationMessage("updept_id", "请选择分行")

                </p>

                <p>

                    <label for="dept_id">机构:</label>

                    @Html.DropDownListFor(model => model.dept_id, ViewBag.depts as IEnumerable<SelectListItem>,string.Empty, new { style = "width:180px" })

            

                    @Html.ValidationMessage("dept_id", "请选择发布机构")

                </p>

关键点在于ViewBag.XX不能与字段名同名。否则无法设置默认值。应该是因为冲突。

例如:

@Html.DropDownListFor(model => model.dept_id, ViewBag.depts as IEnumerable<SelectListItem>,string.Empty, new { style = "width:180px" })

不能写成:

@Html.DropDownListFor(model => model.dept_id,ViewBag.dept_id as IEnumerable<SelectListItem>,string.Empty, new { style = "width:180px" })

© 著作权归作者所有

KavenSu
粉丝 6
博文 66
码字总数 16605
作品 0
深圳
私信 提问
加载中

评论(1)

fangxu1990
fangxu1990
果真如此,ViewBag.XX不能与字段名同名。否则无法设置默认值。应该是因为冲突,太感谢了!!!
ASP.NET MVC的Model元数据与Model模板:将”ListControl”引入ASP.NET MVC

我们不仅可以创建相应的模板来根据Model元数据控制种类型的数据在UI界面上的呈现方法,还可以通过一些扩展来控制Model元数据本身。在某些情况下通过这两者的结合往往可以解决很多特殊数据的呈...

长平狐
2012/09/04
1K
0
ASP.NET下MVC1.0->2.0->3.0->4.0发展

ASP.NET下的MVC从原始的1.0走到2.0,再到3.0,现在走到4.0,也许明年5.0就问世了,先不管那些,那说说这些MVC在ASP.NET是如何变化发展的。对于.net编程人员来说可能会很熟悉,也有可能不熟悉,...

小新的蜡笔
2012/03/13
0
0
Asp.net支持的最大上传文件大小

Asp.net的默认的最大可以上载的文件是4M,可以在web.config中配置. 配置 ASP.NET HTTP 运行库设置。该节可以在计算机、站点、应用程序和子目录级别声明。 可选属性 属性 选项 说明 appRequest...

晨曦之光
2012/03/09
1K
0
WIN7下安装IIS以及配置ASP

一、进入Windows 7的 控制面板->程序和功能->选择左上角的 打开或关闭Windows功能 二、现在出现了安装Windows功能的选项菜单,注意选择的项目,我们需要手动选择需要的功能,下面这张图片把...

喵王不瞌睡
2014/03/25
98
0
asp.net页面指令和事件

@Page指令 定义页面属性 @Page指令允许为ASP.NET页面(.aspx)指定解析和编译页面时使用的属性和值。这是最常用的指令。ASP.NET页面是ASP.NET的一个重要部分,所以它有许多属性。表3-4总结了@...

邓小峰
2009/03/26
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

wait()和sleep()之间的区别

线程中的wait()和sleep()有什么区别? 我是否知道wait() ing线程仍处于运行模式并使用CPU周期,但是sleep() ing不会消耗任何CPU周期正确吗? 为什么我们都 wait()和sleep()如何实现他们在一个...

javail
6分钟前
3
0
好程序员大数据实用教程之面向对象进阶

好程序员大数据实用教程之面向对象进阶:包的创建与使用 是对一个程序中指定功能的部分代码进行包装 构造方法 是一个方法 特殊点: 构造方法没有返回值,不是指的返回值类型是void,而是根本...

好程序员官网
8分钟前
3
0
centos以RPM包方式安装redis的方法

Redis(全称:Remote Dictionary Server 远程字典服务)是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。从2010年3月15日...

Linux就该这么学
9分钟前
3
0
用敏捷估算扑克牌如何估算?

敏捷估算扑克的使用方法多样,可结合项目自身情况使用,怎样使用?使用过程中要遵循哪些规则?用它估算有什么好处呢?一起来看视频吧。(关注“禅道项目管理软件”微信公众号,更多精彩与您分...

炒蚕豆吃蹦豆
11分钟前
3
0
Quick BI支持哪些数据源(配置操作篇)

Quick BI 潜心打造了核心技术底座(OLAP分析引擎),实现了SQL解析、SQL调度、SQL优化、查询加速等基础能力,支撑Quick BI的数据分析和查询加速。OLAP分析引擎包括数据源连接、数据模型、智能...

一肥仔
15分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部