【发布时间】:2015-02-26 14:37:17
【问题描述】:
我有一个 EditorFor 模板,我用一组项目(可能有几个)调用它,并且我单独引用索引(不是在循环中),所以我可以以某种方式布置它们
@Html.EditorFor(x => Model.SomeViewModels[0], "SomeTemplate")
一切正常,但理想情况下我想通过更好的索引器引用数组
@Html.EditorFor(x => Model.SomeViewModels["要查找的项目"], "SomeTemplate")
为了更好的可读性和在索引更改时应对的一些灵活性 所以我想知道是否可以在模型上设置自定义索引器 - 像这样
public ObjecToReturn this[string TextToFind]
{
get
{
return ObjectToReturn based on TextToFind
}
}
它确实有效 - 并且正确地提取了值但是当我查看 Html 时,输入字段都有类似 name=[Item to Find].AnswerValue 的名称,我可以看到原因,但它会弄乱回帖
只是想知道是否有聪明人想出了如何将Model.SomeViewModels["Item to Find"] 发送到 EditorFor 但模板中的底层 Html 反映了Model.SomeViewModels[0](0 是数组中“要查找的项目”的索引)所以回发工作
或者也许这是错误的方法 - 我希望我遗漏了一些简单的东西。
提前致谢
【问题讨论】:
标签: asp.net-mvc templates razor editorfor editorformodel