【问题标题】:Render display template different depending on where it is used?渲染显示模板因使用位置而异?
【发布时间】:2011-10-27 07:52:12
【问题描述】:

我使用@Html.DisplayFor(x => x.SomeObject) 来渲染显示和编辑器模板。 然后我有一个名为 SomeObject 的 DisplayTemplate,SomeObject 应该根据调用 DisplayFor 的视图呈现不同。这样做的最佳方法是什么?我能弄清楚的唯一方法是添加一些额外的视图数据并将其发送到显示模板,然后根据这个标准我呈现正确的 html。

【问题讨论】:

    标签: asp.net-mvc-3


    【解决方案1】:

    听起来您实际上需要两个单独的视图。如果它们之间有重叠(很多相同的 Html),您可以将其放在它们共享的部分中。

    @Html.DisplayFor(x => x.SomeObject, some-condition ? "viewA" : "viewB");
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-21
      • 1970-01-01
      • 2019-09-03
      • 1970-01-01
      • 2019-07-23
      • 2014-05-22
      • 1970-01-01
      相关资源
      最近更新 更多