使用部分视图来自定义MVC html控件

时间:2014-02-13 20:37:17

标签: asp.net-mvc button partial-views reusability maintainability

我的网络应用程序中有一堆按钮式链接:

<a href="@Url.Action("Index", "Home")" class="btn btn-default btn-lg btn-right">
    <span class="glyphicon glyphicon-home"></span>
    <h3>Store Home</h3>
</a>

有时他们会获得一个额外的标签来指示方向箭头或其他一些装饰:

<a href="@Url.Action("Payment", "Checkout")" class="btn btn-primary btn-lg btn-right">
    <h3><<</h3>
    <span class="glyphicon glyphicon-credit-card"></span>
    <h3>Back to Payment</h3>
</a>

我的问题是,与使用这个按钮复制和粘贴的微妙不同风格来标记我的标记,是否适合使用局部视图,以便知道如何制作按钮及其各种口味都在一个地方?编辑:为清楚起见,我指的是除了按钮标记之外的部分视图,可能还有一个“按钮视图模型”对象,其中包含视图的各种设置。

部分观点的目的似乎是提升可重用性和可维护性,但我不确定我是否采用了那么多,或者是否存在某种性能限制,我不知道这使得坏主意。

1 个答案:

答案 0 :(得分:3)

我宁愿选择自定义的HTML帮助程序,但使用partial来隔离常用功能,例如这个也是合适的。

使用自定义帮助程序,您的代码可能如下所示:

@Html.MySuperButton("Store Home", "Index", "Home")

或:

@Html.MySuperButton("Back to Payment", "Payment", "Checkout", "<")

在所有情况下,如果您具有重复的常用功能,最好将其封装到可重用的帮助程序中。对于HTML的这么小部分,自定义助手似乎是最合适的解决方案。