【问题标题】:htmlHelper vs partial viewhtmlHelper 与部分视图
【发布时间】:2013-02-11 23:56:33
【问题描述】:

我无法决定是否应该使用 htmlHelper 或局部视图来解决我的问题。

我想重用以下代码:

<div style="width: 500px; float: left;">
  <div class="box effect2">
    <span><a href="@Url.Action("someMethod", "somController")">
        <img src="@Url.Content("~someurl)" /></a></span>
  </div>
</div>

href 和图像源将是参数。

最好的方法是什么?

【问题讨论】:

    标签: asp.net-mvc-4 partial-views html-helper


    【解决方案1】:

    当您有大量标记时使用局部视图。 Html 助手应该只用于生成 HTML 的一小部分。在这种特殊情况下,您确实处于极限,两种方法都可以。在此特定示例中使用您喜欢的那个。我可能会在这里使用自定义 HTML 帮助程序,因为这似乎是一个很常见的小部件,如果您将其合并到程序集中,可以在各种应用程序中重用。

    【讨论】:

    • 好的,感谢您提供的信息。我根据您的建议创建了一个 html 助手。
    • 您的代码是否会通过 AJAX 被调用也可能是一个标准。
    • @DarinDimitrov 我认为这里也应该考虑性能方面。使用局部视图时,ControllerFactory 将创建局部视图的控制器(如果有局部视图),并且会花费时间。 ControllerFactory 将首先获取局部视图的位置(它缓存局部视图的位置,但仍然......)并创建一个控制器实例,它不是一个小对象并消耗一些内存。如果局部视图没有任何控制器(例如 RenderPartial),它仍然需要搜索局部视图。因此,我认为使用 HtmlHelpers 会更好。你怎么看?
    • @sotn,搜索局部视图几乎没有任何成本,因为它被缓存了。
    猜你喜欢
    • 2010-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-10
    • 1970-01-01
    相关资源
    最近更新 更多