如何将下拉列表添加到我的 MVC3 应用程序

本文关键字:我的 MVC3 应用程序 添加 下拉列表 | 更新日期: 2023-09-27 18:33:24

>HELP:我想使用代码优先和 C# 向我的 MVC3 应用程序添加一个下拉列表。我有 2 个表学生和大学,我需要在学生的创建视图中放置大学的动态列表。应该如何以及在何处将方法添加到我的控制器。有人请帮我谢谢

如何将下拉列表添加到我的 MVC3 应用程序

我猜你正在获得投票,因为你可以用谷歌搜索这个并轻松找到答案。 无论如何,这里有一个链接可以帮助您入门。

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 --")