创建编辑器模板
本文关键字:编辑器 创建 | 更新日期: 2023-09-27 18:11:16
我试图实现Nullable<bool>
的编辑器模板,而不是出现真或假,出现"Si"或"No"。这是我目前得到的。
@model Nullable<bool>
@{
var listItems = new List<System.Web.UI.WebControls.ListItem>();
listItems.Add(new System.Web.UI.WebControls.ListItem{Text="Si", Value="true"});
listItems.Add(new System.Web.UI.WebControls.ListItem{Text="No", Value="false"});
}
@Html.DropDownList( model => model.Value, listItems)
和它抛出这个错误Cannot convert lambda expression to type 'string' because it is not a delegate type
。我看不到错误,我做错了什么??
DropDownList
helper接受字符串作为第一个参数,而不是lambda表达式。使用DropDownListFor
并确保第二个参数是IEnumerable<SelectListItem>
,您的代码不是:
@model Nullable<bool>
@{
var listItems = new[]
{
new SelectListItem { Value = "true", Text = "Si" },
new SelectListItem { Value = "false", Text = "No" }
};
}
@Html.DropDownListFor(model => model.Value, listItems)
你可以在ASP中忘记System.Web.UI.WebControls.ListItem
。NET MVC应用程序。这是典型的WebForms