Asp.net mvc 列表的编辑器模板<;字符串>;

Asp.net mvc 列表的编辑器模板<;字符串>;,asp.net-mvc,asp.net-mvc-3,c#-4.0,editortemplates,Asp.net Mvc,Asp.net Mvc 3,C# 4.0,Editortemplates,我希望在我的ASP.NET MVC3站点中为一些基本模型创建一个通用编辑器。现在,它们可以包含字符串、布尔值、枚举和列表集合。我想做的是扩展默认编辑器模板来识别列表,并显示一个自定义编辑器,它可以向列表添加和删除字符串。其他的都很好 由于我无法命名文件List.cshtml,当然,有没有办法让它正常工作?另外,为什么默认情况下枚举不是枚举的下拉列表 我知道我可以创建名为模板的模型,但直到运行时我才知道类名 感谢您的帮助和指导。您可以命名编辑器模板Foo.cshtml,其中Foo是列表的类型:li

我希望在我的ASP.NET MVC3站点中为一些基本模型创建一个通用编辑器。现在,它们可以包含字符串、布尔值、枚举和列表集合。我想做的是扩展默认编辑器模板来识别列表,并显示一个自定义编辑器,它可以向列表添加和删除字符串。其他的都很好

由于我无法命名文件List.cshtml,当然,有没有办法让它正常工作?另外,为什么默认情况下枚举不是枚举的下拉列表

我知道我可以创建名为模板的模型,但直到运行时我才知道类名


感谢您的帮助和指导。

您可以命名编辑器模板
Foo.cshtml
,其中
Foo
是列表的类型:
list
。然后简单地说:

@Html.EditorFor(x => x.FooList)

如果
dublist
是一个
IEnumerable
,您的编辑器模板将自动为列表中的每个元素呈现。因此,如果您已经为基本数据类型(如字符串、十进制、日期时间等)提供了编辑器模板。。。当您执行
@Html.EditorFor(x=>x.SomeList)
时,您的编辑器模板将被拾取。

如果您想要一个实际列表的编辑器模板,该怎么办?例如,我想写一个视图:
ThingList.cshtml
Thing.cshtml
ThingList.cshtml
会将
东西
s包装在一个div中,或者应用一些样式,等等。好答案,一个问题:在最后一个示例中,
EditorFor
是否会生成一个列表,将编辑器模板的输出放入
  • 中?@Josh M:我打赌您需要将列表包装在自定义类中,并使用它的类型名作为编辑器模板名。