【发布时间】:2020-02-01 08:02:26
【问题描述】:
我有一个实体类 Owners,它需要一个关联类 Cars 与之链接:
[Key]
public int Id { get; set; }
[Required]
[MaxLength(32)]
public string Name{ get; set; }
[Required]
public Cars AssociatedCar { get; set; }
我在 Razor 页面中使用的模型是我的所有者:
@model Dealership.Domain.DatabaseContext
我使用脚手架 Razor 页面作为基础,但他们没有创建下拉菜单来选择要与车主链接的汽车。我已经能够在我的控制器中使用私有可枚举类获得选择视图:
private IEnumerable<SelectListItem> GetAllCars()
{
var Cars = _carData.GetAllCars().Result;
var List = Cars.Select(x => new SelectListItem { Value = x.Id.ToString(), Text = x.Name });
return new SelectList(List, "Value", "Text");
}
然后我将它设置在脚手架的 get 控制器中:
// GET: Buttons/Create
public IActionResult Create()
{
var cars = GetAllCars();
return View(cars);
}
我的问题是如何让汽车通过变量显示在页面上?如果无法完成,是否有另一种方法可以将汽车添加到视图中?我对 Razor 很陌生,不确定是否可以使用脚手架页面。
【问题讨论】:
-
对不起,没有,我添加了模型并将添加 Razor 代码以使问题更清晰。
-
您将
IEnumerable<SelectListItem>发送到视图并期待@model Dealership.Domain.DatabaseContext在视图中?这怎么可能? -
这段代码是脚手架的......请让我知道是否有此更改以及将其更改为什么。如前所述,我是 Razor 的新手,不确定是否要使用脚手架。
标签: c# asp.net-mvc razor razor-pages