我希望为我的ASP.NET MVC3站点中的一些基本模型创建一个通用编辑器。现在它们可以包含字符串、布尔值、枚举和列表集合。我想要做的是扩展默认的编辑器模板,以识别列表,并显示一个自定义编辑器,可以添加和删除该列表中的字符串。其他的都工作得很好。
既然我不能将文件命名为List.cshtml,那么有没有办法让它正常工作呢?另外,为什么默认情况下枚举不是枚举的下拉列表?
我知道我可以创建命名为模板的模型,但是直到运行时我才知道类名。
感谢您的帮助和指导。
发布于 2011-03-15 04:56:57
您可以将编辑器模板命名为Foo.cshtml,其中Foo是列表的类型:List<Foo>。然后简单地说:
@Html.EditorFor(x => x.FooList)如果FooList是一个IEnumerable<Foo>,您的编辑器模板将为该列表中的每个元素自动呈现。因此,如果您已经有了基本数据类型的编辑器模板,如String、Decimal、DateTime等...当您执行@Html.EditorFor(x => x.SomeList)时,您的编辑器模板将被拾取。
https://stackoverflow.com/questions/5301790
复制相似问题