如何将多个模型用于一个视图
本文关键字:一个 视图 模型 用于 | 更新日期: 2023-09-27 18:36:31
我在同一个EDMX中有几个数据表/实体(杏香蕉,柠檬),每个表都有多列(名称,数量,日期,排序)
在一个视图中,我有一个下拉列表(DropDownList),其中包含("A","B"和"C")
我想做什么:
在我的下拉列表中:当我选择值 A 海报时,我向下下拉列表中(在同一视图中) 表数据 APRICOT
或
当我选择值I B时,我的组合底部会出现(以相同的顺序)来自表格BANANA
的数据或
当我选择值 C 时,我出现在组合的底部(以相同的顺序)来自表格 BANANA 的数据
你能给我一个示例代码这个类、控制器和视图吗?对不起,我是初学者!谢谢
非常感谢您的帮助
杰里米
创建一个新的视图模型类,该类将获取您需要的所有数据并将该视图模型传递给视图。然后,您可以根据所选的下拉列表显示视图模型中的数据。
水果.cs
public class Fruit
{
public string Name { get; set; }
public int Quantity { get; set; }
}
水果视图模型.cs
public class FruitViewModel
{
public IEnumerable<Fruit> Fruits { get; set; }
public FruitViewModel(IEnumerable<Fruit> fruit)
{
Fruits = fruits
}
}
控制器.cs
public ActionResult FruitView()
{
var fruits = //get your data here
return View(new FruitViewModel(fruits));
}
查看.cs
@model FruitViewModel
@Html.DropDownList("FruitTypeId", new SelectList(Model.Fruits , "Id", "Name"), "Select one")
根据选定的 Id,您可以使用 Javascript 显示所需的值