MVC - 如何根据条件在下拉列表中添加 css 属性

MVC - How to add css property on dropdown based on condition

很长一段时间后我开始使用 MVC,现在我无法做一些非常简单的事情。

型号class:

public class TaskDetails
{
    public string ProjectID { get; set; }
    public string ProjectName { get; set; }
    public DateTime StartDate { get; set; }
    public DateTime EstimatedDate { get; set; }
    public string TaskDescription { get; set; }
}

控制器:

List<SelectListItem> query = DE.tblEmployees
                               .Select(c => new SelectListItem { Text = c.Name, Value = c.Name })
                               .ToList();
ViewBag.Categories = query;
return View();

查看:

<div class="dropdown">
@Html.DropDownList("CategoryID", (List<SelectListItem>)ViewBag.Categories, "--User Name--")
</div>

这是来源,它工作得很好,但我想做的是隐藏下拉列表中的所有特定选项,其中 Value != NewTask

如果我没记错的话,您想在下拉列表中显示大于 10 的 ProjectID,对吗?

您可以在控制器上执行此操作,

DE.tblEmployees.Select(c => new SelectItem
                      {Text = c.Name, Value = c.Name }).Where(x => x.ProjectID > 10).ToList();

希望这会有所帮助。

不确定是否适合您,但以防万一。

 List<SelectListItem> query = DE.tblEmployees
    .Select(c => new SelectListItem { Text = c.ProjectName, Value = c.ProjectName })
    .Where(x => x.Value.Equals("NewTask"))
    .ToList();

或直接查看:

@Html.DropDownList("CategoryID", ((List<SelectListItem>)ViewBag.Categories).Where(x => x.Value.Equals("NewTask")), "--User Name--")