ASP.NET MVC 2-选择不带数据库的列表项
我仍在努力解决这个问题-- 我所追求的是一个订单,最初它将是一个笔记本电脑订单,但它可能是一台电脑,打印机等在未来。因此,我有一个订单控制器,带有一个笔记本电脑动作,这就形成了一个新的笔记本电脑型号。在模型中,我想收集各种信息,如客户姓名、客户详细信息等。在我的模型中,我也想保留一个选择列表,但我已经尝试了很久,似乎无法运行它。我的笔记本电脑型号有: --笔记本电脑型号选择列表ASP.NET MVC 2-选择不带数据库的列表项,asp.net,asp.net-mvc-2,Asp.net,Asp.net Mvc 2,我仍在努力解决这个问题-- 我所追求的是一个订单,最初它将是一个笔记本电脑订单,但它可能是一台电脑,打印机等在未来。因此,我有一个订单控制器,带有一个笔记本电脑动作,这就形成了一个新的笔记本电脑型号。在模型中,我想收集各种信息,如客户姓名、客户详细信息等。在我的模型中,我也想保留一个选择列表,但我已经尝试了很久,似乎无法运行它。我的笔记本电脑型号有: --笔记本电脑型号选择列表 public SelectList screenSize = new SelectList(new[] {
public SelectList screenSize = new SelectList(new[]
{
new SelectListItem { Text = "11.6", Value = "11.6" },
new SelectListItem { Text = "15.6", Value = "15.6" },
new SelectListItem { Text = "17", Value = "17" }
}, "Value", "Text");
在控制器中,我在柱子上接受笔记本电脑
[HttpPost]
public ActionResult Index(Laptop laptopToEmail)
{
if (ModelState.IsValid)
{
...send an email
}
else return View(laptopToEmail)
}
在视图中,我能够呈现项目列表,并且我有一个选择列表,但是当我使用时,我没有得到传递到电子邮件的值
laptopToEmail.screenSize.SelectedValue
视图具有此辅助对象
<%: Html.DropDownList("screenSize",Model.screenSize) %>
我是不是遗漏了什么?在MVC中没有数据库的情况下,让选择列表正常工作肯定不会这么困难 你知道,所有这些neato MVC Html助手都有Html等价物。对于两项下拉列表,为什么不写一点html:
<select>
<option value="a">Option A</option>
<option value="b">Option b</option>
</select>
方案A
方案b
如果我在模型中输入一个公共字符串,然后在HTML的选择列表中输入一个与我的模型属性相匹配的name标记,那么这就行了,但是作为视图的dirtys MVC肯定有选择列表而不是模型?在我的控制器中,我可以使用if(ModelState.IsValid)来处理HttpPost,它将从HTML选择列表中获取值-我刚刚测试了它,它可以工作,但我不确定这是否是好的,SOCNo law说您需要相同的模型来访问返回的视图。