Je vais écrire une aide simple qui enveloppe Html.ActionLink et lui ajoute un certain attribut de classe. À l'heure actuelle, il ressemble à:Comment fusionner htmlAttributes pour Html.ActionLink (MVC3)?
@helper MyActionLink(string text, string action, object routeValues, object htmlAttributes)
{
@Html.ActionLink(text, action, routeValues, new { @class = "MyClass" })
}
Il ajoute réellement nécessaire @class attribut, mais ne tient pas compte tous les htmlAttributes
passé. Donc, si utilisées comme
@MyActionLink("Item1", "Edit", new { itemId = 1 }, new { @class = "class1" })
il émet
<a class="MyClass" href="/Test/Edit?itemId=1">Item1</a>
mais je veux qu'il y ait 2 classes: class="class1 MyClass"
Comment puis-je fusionner ces htmlAttributes?
merci! C'est bien de savoir que ctor de RouteValueDictionary accepte et analyse les objets. – Shaddix
Je viens de voir des sources et conseille d'utiliser 'HtmlHelper.AnonymousObjectToHtmlAttributes' pour la conversion, car il fait une conversion sur les noms de propriété d'objet (comme remplacer' _' par '-') – hazzik