如何将下拉列表添加到我的 MVC3 应用程序
本文关键字:我的 MVC3 应用程序 添加 下拉列表 | 更新日期: 2023-09-27 18:33:24
>HELP:我想使用代码优先和 C# 向我的 MVC3 应用程序添加一个下拉列表。我有 2 个表学生和大学,我需要在学生的创建视图中放置大学的动态列表。应该如何以及在何处将方法添加到我的控制器。有人请帮我谢谢
我猜你正在获得投票,因为你可以用谷歌搜索这个并轻松找到答案。 无论如何,这里有一个链接可以帮助您入门。
http://www.mikesdotnetting.com/Article/128/Get-The-Drop-On-ASP.NET-MVC-DropDownLists
基本思想是将下拉列表作为发送到视图的类的属性传递。所以像这样:
public Student
{
public List<University> Universities({//get list from database in getter
然后在视图中使用类似的东西
@Html.DropDownListFor(model => model.StudentsSchool, Model.Universities)
首先为下拉列表创建实体类。它将返回一个值列表
public class KeyValueEntity
{
public string Description { get; set; }
public string Value { get; set; }
}
public class MyViewModel
{
public List<KeyValueEntity> Status { get; set; }
}
在控制器上编写以下代码
[HttpGet]
public ActionResult Dropdown()
{
MyViewModel model = GetDefaultModel();
return View(model);
}
}
public MyViewModel GetDefaultModel()
{
var entity = new MyViewModel();
entity.Status = GetMyDropdownValues();
return entity;
}
private List<KeyValueEntity> GetMyDropdownValues()
{
return new List<KeyValueEntity>
{
new KeyValueEntity { Description = "Yes" , Value ="1" },
new KeyValueEntity { Description = "No" , Value ="0"}
};
}
您的 cshtml 页面的代码:现在,您需要在视图之上将视图与模型绑定,以定义模型类
@model MyViewModel
Following is the code for dropdown binding
@Html.LabelForModel("Status:")
@Html.DropDownListFor(m => m.Status, new SelectList(Model.Status, "Value", "Description"), "-- Please Select --")