Asp.net mvc 4 在mvc视图中传递下拉列表值

Asp.net mvc 4 在mvc视图中传递下拉列表值,asp.net-mvc-4,model-view-controller,html.dropdownlistfor,populate,pass-data,Asp.net Mvc 4,Model View Controller,Html.dropdownlistfor,Populate,Pass Data,我是MVC的新手,我想在其他视图上传递我的dropdownlist值。我有两个类Patient和History,如何将患者的姓名(使用dropdownlist)传递到History视图,当我选择任何患者时,它将显示患者的病史 public class Patient { public List<Patient> ListOfPatient { get; set; } public SelectList ListOfPatient1 { get

我是MVC的新手,我想在其他视图上传递我的dropdownlist值。我有两个类Patient和History,如何将患者的姓名(使用dropdownlist)传递到History视图,当我选择任何患者时,它将显示患者的病史

 public class Patient
    {
        public List<Patient> ListOfPatient { get; set; }
        public SelectList ListOfPatient1 { get; set; }
        public int Id_pacient { get; set; }
        public string Name { get; set; }
        //... other properties
    }

 public class History
    {
        public List<History> ListOfHistory { get; set; }
    public int Id_history { get; set; }
    public int Id_patient { get; set; }
    //... other properties
}
公共类患者
{
患者{get;set;}的公共列表列表
public SelectList患者列表1{get;set;}
公共int Id_pacient{get;set;}
公共字符串名称{get;set;}
//……其他财产
}
公共课历史
{
历史记录的公共列表{get;set;}
公共int Id_历史{get;set;}
公共int Id_患者{get;set;}
//……其他财产
}

如果问题不清楚,我可以复制粘贴更多项目代码。您需要包括控制器代码和视图一个问题。为什么你们在一个病人类别中有一个列表,而在历史上有相同的列表。你们所说的“传递另一个视图”是什么意思?当您从控制器操作返回
视图(someModelInstance)
时,模型应该具有视图所需的所有数据。因此,如果视图需要一些数据,可以将其添加到模型中,或者使用该数据和模型创建一个自定义视图模型(取决于哪个选项在语义上更有意义,没有意义污染具有视图关注点的模型)。这些数据可能需要从模型内部(通常是首选)或由控制器填充。问题不清楚,您的类看起来需要重新处理(包括命名)。首先,如果患者和病史被保存在数据库中(我想你会的),那么它们之间应该有一个关系。比如,一对多。然后,您可以使用诸如EntityFramework之类的ORM工具(如果您愿意),并使用您喜欢的映射方式。这有助于您使用导航属性获取这些关系映射,这很方便。要了解如何使用DropdownList,这里有一个链接。我建议学习ViewModels;这对你有帮助。干杯