gpt4 book ai didi

asp.net-mvc - 从 Controller 或 View 模型创建下拉列表

转载 作者:行者123 更新时间:2023-12-01 02:46:33 29 4
gpt4 key购买 nike

我将如何在我的 Controller 中创建一个 SelectList 并将其传递给我的 View ?我需要给“-- Select--”选项一个值为0。

我正在回复 replies that I got from Jeremey of Fluent Validation .

这就是我目前所拥有的。我的 View 模型:

[Validator(typeof(CreateCategoryViewModelValidator))]
public class CreateCategoryViewModel
{
public CreateCategoryViewModel()
{
IsActive = true;
}

public string Name { get; set; }
public string Description { get; set; }
public string MetaKeywords { get; set; }
public string MetaDescription { get; set; }
public bool IsActive { get; set; }
public IList<Category> ParentCategories { get; set; }
public int ParentCategoryId { get; set; }
}

我的 Controller 。
public ActionResult Create()
{
List<Category> parentCategoriesList = categoryService.GetParentCategories();

CreateCategoryViewModel createCategoryViewModel = new CreateCategoryViewModel
{
ParentCategories = parentCategoriesList
};

return View(createCategoryViewModel);
}

这是我的看法:
@Html.DropDownListFor(x => x.ParentCategoryId, new SelectList(Model.ParentCategories, "Id", "Name", Model.ParentCategoryId), "-- Select --")

如何在 Controller 或 View 模型中创建下拉列表并将其传递给 View ?我需要“-- Select --”选项的值为0。

最佳答案

在您的模型中,更改 IList<Category>SelectList然后像这样实例化它......

List<ParentCategory> parentCategories = categoryService.GetParentCategories();

parentCategories.Insert(0, new ParentCategory(){ Id = "0", Name = "--Select--"});

ParentCategories = new SelectList(parentCategories, "Id", "Name");

然后在您看来,您可以简单地调用
@Html.DropDownListFor(m => m.ParentCategoryId, Model.ParentCategories);

关于asp.net-mvc - 从 Controller 或 View 模型创建下拉列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6663615/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com