我有一个 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 是数组中“要查找的项目”的索引)所以回发工作
或者也许这是错误的方法 - 我希望我错过了一些简单的东西。
提前致谢