我觉得有点傻。
我正在尝试使用拳击作为功能示例来掌握 MVC 4。
我WeightCategories
在数据库中(Heavyweights
等),和Boxers
。
看起来很简单。该关系是拳击手具有当前的体重类别,但是当我编辑时,我希望它能够通过下拉菜单进行更改。
如果它是我在代码中自己制作的列表,我知道该怎么做,但是我无法理解如何从WeightCategory
表中“加载”列表并将其显示在拳击手的视图/模型中。
所以,这是我的WeightCategory
项目代码:
[Table("WeightCategories")]
public class WeightCategory
{
[Key]
public int WeightCategoryId { get; set; }
public WEIGHT_CATEGORIES WeightCategoryType { get; set; }
[Display(Name = "Weight Category Name")]
[Required]
[MinLength(5)]
public string Name { get; set; }
[Display(Name = "Weight Limit In Pounds")]
public int? WeightLimit { get; set; }
}
这是拳击手物品的代码
[Table("Boxers")]
public class Boxer
{
[Key]
public int BoxerId { get; set; }
public WeightCategory CurrentWeightCategory { get; set; }
[Required]
public string Name { get; set; }
public int Wins { get; set; }
public int Losses { get; set; }
public int Draws { get; set; }
public int Kayos { get; set; }
}
在视图中,我真的不确定如何解决这个问题,我很确定它不是自动的,我可能需要在控制器中的某个地方加载表格......我正在寻找最佳实践或其他东西。
在最后的视图中是这样的:
@Html.DropDownListFor(model => model.CurrentWeightCategory.WeightCategoryId,
new SelectList(Model.WeightCategories, "WeightCategoryId", "Name",
Model.WeightCategories.First().WeightCategoryId))