У меня есть вспомогательный метод Html со следующей подписью:
public static string MyActionLink(this HtmlHelper html
, string linkText
, List<KeyValuePair<string, object>> attributePairs
, bool adminLink){}
У меня есть другая утилита, которая берет все пары атрибутов и объединяет их в тег как пары атрибут / значение:
ExtensionsUtilities.MergeAttributesToTag(tag, attributePairs);
и все в порядке. Проблема, однако, заключается в том, что параметр
, List<KeyValuePair<string, object>> attributePairs
немного громоздко в определении, а тем более при использовании метода Хелпера:
<span class="MySpan">
<%= Html.MyActionLink(Html.Encode(item.Name)
, new List<KeyValuePair<string, object>>
{
Html.GetAttributePair("href", Url.Action("ACTION","CONTROLLER")),
Html.GetAttributePair("Id", Html.Encode(item.Id)),
Html.GetAttributePair("customAttribute1", Html.Encode(item.Val1)),
Html.GetAttributePair("customAttribute2", Html.Encode(item.Val2))
}, false)%>
</span>
(Html.GetAttributePair()
просто возвращает KeyValuePair в попытке немного привести в порядок вещи)
Мне просто любопытно, может ли кто-нибудь предложить другой (возможно, более эффективный и удобный для разработчиков) подход к достижению того же результата?
Спасибо, ребята
Dave