Html.ActionLink를 래핑하고 특정 클래스 특성을 추가하는 간단한 도우미를 작성하려고합니다.HtmlAttributes를 Html.ActionLink (MVC3)에 병합하는 방법은 무엇입니까?
@helper MyActionLink(string text, string action, object routeValues, object htmlAttributes)
{
@Html.ActionLink(text, action, routeValues, new { @class = "MyClass" })
}
그것은 실제로 속성 @class 필요한 추가하지만 모든 통과 htmlAttributes
을 무시 : 순간에 그것은 것 같습니다. 그래서 경우가
@MyActionLink("Item1", "Edit", new { itemId = 1 }, new { @class = "class1" })
는
<a class="MyClass" href="/Test/Edit?itemId=1">Item1</a>
를 출력하지만 난 2 개 클래스가 갖고 싶어 :
class="class1 MyClass"
가 어떻게 그 htmlAttributes을 병합 할 수 있습니까?
감사합니다! RouteValueDictionary의 ctor가 객체를 받아들이고 파싱한다는 사실을 알고 있습니다. – Shaddix
방금 원본을 보았고 변환에'HtmlHelper.AnonymousObjectToHtmlAttributes'를 사용하도록 권했습니다. 객체 속성 이름에서 일부 변환을 수행합니다 (예 :'_'를'-'로 바꾸기). – hazzik