Asp.net mvc 5 MVC5中的下拉列表

Asp.net mvc 5 MVC5中的下拉列表,asp.net-mvc-5,html.dropdownlistfor,Asp.net Mvc 5,Html.dropdownlistfor,我想显示多个下拉列表MVC5。我也有相应的课程。请告知同样的情况。我对MVC一无所知。值(SysId)需要存储在数据库中,描述将显示在页面中。网页中有4个下拉列表。所有类都具有相同的属性 同样的,也请帮忙 public ActionResult Registration() { RegistrationClass obj = new RegistrationClass(); obj = obj.getAllDropdown(); return View(obj); } publ

我想显示多个下拉列表MVC5。我也有相应的课程。请告知同样的情况。我对MVC一无所知。值(SysId)需要存储在数据库中,描述将显示在页面中。网页中有4个下拉列表。所有类都具有相同的属性

同样的,也请帮忙

public ActionResult Registration()
{
   RegistrationClass obj = new RegistrationClass();
   obj = obj.getAllDropdown();
   return View(obj);
}
public class RegistrationClass
{

[Required(ErrorMessage = "Please enter Name")]
        [StringLength(50, ErrorMessage = "Name can not be more than 50 characters ")]
        [DisplayName("Name")]
        public string name { get; set; }


        [Required(ErrorMessage = "Please select Gender")]
        [DisplayName("Gender")]
        public string gender { get; set; }

        [Required(ErrorMessage = "Please enter Date of Birth")]
        [DisplayName("Date of Birth")]
        [DataType(DataType.Date,ErrorMessage = "Invalid Date ")]
        public DateTime dob { get; set; }

        [DisplayName("Caste")]
        public List<Caste> lcaste { get; set; }
        public int cast_id { get; set; }

       public RegistrationClass getAllDropdown()
        {
            RegistrationClass obj = new RegistrationClass();
            Connection cobj = new Connection();
            string strConn = cobj.getConnectionString();
            SqlConnection con = new SqlConnection(strConn);
            SqlCommand cmd = new SqlCommand("proc_get_preference_dropdown", con);
            SqlDataAdapter ada = new SqlDataAdapter(cmd);
            DataSet ds = new DataSet();
            ada.Fill(ds);
            if (ds.Tables[0].Rows.Count > 0)
            {
                for (int i = 0; i < ds.Tables[0].Rows.Count;i++ )
                {
                    if (ds.Tables[0].Rows[i]["code"].ToString() == "04") // Set Caste Preference
                    {
                        lcaste = new List<Caste>();

                        Caste obj1 = new Caste();
                        obj1.decription = ds.Tables[0].Rows[i]["description"].ToString();
                        obj1.sysId = Convert.ToInt32(ds.Tables[0].Rows[i]["id"]);
                        //obj1.isChecked = "N";
                        lcaste.Add(obj1);
                        obj.lcaste = lcaste;
                        continue;
                    }
                }


            }

            return obj;
        }

public class Caste
    {
        public int sysId { get; set; }
        public string decription { get; set; }
        public string isChecked { get; set; }

    }
}


@model Matrimony.Models.RegistrationClass
<tr>
                                <td>
                                    @Html.LabelFor(model => model.subcaste)
                                </td>
                                <td>

                                   @Html.DropDownListFor(model => model.cast_id, new SelectList(Model.lcaste))

                                </td>
                            </tr>
public ActionResult注册()
{
RegistrationClass obj=新的RegistrationClass();
obj=obj.getAllDropdown();
返回视图(obj);
}
公共类注册类
{
[必需(ErrorMessage=“请输入名称”)]
[StringLength(50,ErrorMessage=“名称不能超过50个字符”)]
[显示名称(“名称”)]
公共字符串名称{get;set;}
[必需(ErrorMessage=“请选择性别”)]
[显示名称(“性别”)]
公共字符串{get;set;}
[必需(ErrorMessage=“请输入出生日期”)]
[显示姓名(“出生日期”)]
[数据类型(DataType.Date,ErrorMessage=“无效日期”)]
公共日期时间dob{get;set;}
[显示名称(“种姓”)]
公共列表lcaste{get;set;}
公共int cast_id{get;set;}
公共注册类getAllDropdown()
{
RegistrationClass obj=新的RegistrationClass();
连接cobj=新连接();
字符串strConn=cobj.getConnectionString();
SqlConnection con=新的SqlConnection(strConn);
SqlCommand cmd=newsqlcommand(“proc\u get\u preference\u dropdown”,con);
SqlDataAdapter ada=新的SqlDataAdapter(cmd);
数据集ds=新数据集();
ada.Fill(ds);
如果(ds.Tables[0].Rows.Count>0)
{
对于(int i=0;imodel.subcaste)
@DropDownListFor(model=>model.cast\u id,新选择列表(model.lcaste))

最后,我通过添加简单的选项标签解决了这个问题

<td>
<select name="cast_id">
    <option value="0">--Select--</option>
    @for (int i = 0; i < Model.lcaste.Count; i++)
    {
       <option value=@Model.lcaste[i].sysId>@Model.lcaste[i].decription</option>
    }

</select>

</td>

--挑选--
@对于(int i=0;i
select的name属性将在post方法中获取所选项目的值。因此,我们可以在控制器中处理它。我还在模型类中添加了属性以将值存储为

public int cast_id { get; set; }
public List<Caste> lcaste { get; set; }
public int cast_id{get;set;}
公共列表lcaste{get;set;}

最后,我通过添加简单的选项标签解决了这个问题

<td>
<select name="cast_id">
    <option value="0">--Select--</option>
    @for (int i = 0; i < Model.lcaste.Count; i++)
    {
       <option value=@Model.lcaste[i].sysId>@Model.lcaste[i].decription</option>
    }

</select>

</td>

--挑选--
@对于(int i=0;i
select的name属性将在post方法中获取所选项目的值。因此,我们可以在控制器中处理它。我还在模型类中添加了属性以将值存储为

public int cast_id { get; set; }
public List<Caste> lcaste { get; set; }
public int cast_id{get;set;}
公共列表lcaste{get;set;}