【发布时间】:2021-08-23 07:34:48
【问题描述】:
我是 MVC Core 的新手,我想做一个使用 ViewModel 来自数据库的下拉列表的示例。
我的例子是:
表 ( Car ):带有 CarId、CarName、CarBrand。 [FK(ColorId), FK(UserID)] 表格(颜色):带 ColorId ,颜色
public class Car
{
[Key]
public int CarId { get; set; }
[Required]
public string CarBrand { get; set; }
[Required]
public string CarName { get; set; }
//--------Foreign[ColorID]--------Foreign[UserId]--------------------------------
// Foreign key to customer
public virtual Color Color { get; set; } // Dropdown List
public ApplicationUser ApplicationUser { get; set; } // Logged in UserId
}
public class Color
{
[Key]
public int ColorId { get; set; }
[Required]
public string ColorName { get; set; }
}
在数据库中保存几种颜色:1=红色,2=黄色,3=绿色
这是我的观点
@model DropDownListOtherModel.Models.Car
<div ">
<div class="form">
<form class="Car-form" method="Post" asp-controller="Car" asp-action="Save">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div class="form-group">
@*<label asp-for="FullName"></label>*@
<input asp-for="CarBrand" placeholder=" Car Brand" />
<span asp-validation-for="CarBrand" class="text-danger"></span>
</div>
<div class="form-group">
@*<label asp-for="FullName"></label>*@
<input asp-for="CarName" placeholder=" Car Name" />
<span asp-validation-for="CarName" class="text-danger"></span>
</div>
<div class="form-group">
<label for="cars">Choose a Color:</label>
<br />
<select name="cars" id="cars" asp-for="Color">
<option value="1">RED</option>
<option value="2">YELLOW</option>
<option value="3">GREEN</option>
<option value="4">BLACK</option>
<option value="5">WHITE</option>
</select>
</div>
<button class="btn btn-success" type="submit">submist</button>
</form>
</div>
</div>
在我的视图中,我应该显示带有 2 个输入 CarName、CarBrand 和 3 个下拉颜色的表单,当我保存时,它应该与表单一起附加。
首先我应该如何在选择列表中显示颜色, 其次,我应该更新 Save 方法,以包含 colorID 吗?
【问题讨论】:
-
还有什么可以帮助您的吗?
标签: c# asp.net-core asp.net-core-mvc