繁体   English   中英

ASP.NET MVC编辑器模板不起作用

[英]ASP.NET MVC Editor Template Not Working

在获取Razor视图以呈现带有嵌入式IEnumerable的ViewModel遇到问题之后,我遇到了以下帖子: View Model IEnumerable <>属性从post方法返回空值(不绑定)吗?

我使用编辑器模板实现了建议的解决方案,但我的视图仅在嵌入式IEnumerable显示第一个属性。 我实现了以上文章中的两种解决方案,但是带有EditorFor模板的解决方案对我不起作用。 我的视图仅显示ID属性。

有谁知道为什么带有编辑器模板的部分可能不适用于我的设置? 我已经完全按照建议实施了它。

如果您的视图仅显示第一项,则不会在EditorTemplates文件夹中拾取您的模板。

在EditorFor扩展方法中定义模板,如下所示:

@Html.EditorFor(model => model, "NameofEditorTemplate")

要使用编辑器模板,请考虑以下提示

  1. 您必须将模板放在Views文件夹的EditorTemplates文件夹内。
  2. 您应该使用EditorFor HTML助手来调用适当的模板(当您要查看特定的模型时,它将自动找到所需的模板,否则,您必须通过EditorFor的参数或使用模型中的[UIHint]属性来提示引擎。查看扩展ASP.NET MVC的编辑器模板
  3. 在模板内部使用简单模型,例如stringDateTime?
  4. 为了使用IEnumerable模型的模板,请考虑一个非常重要的技巧,该技巧在EditorFor IEnumerable with TemplateName中可用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM