Existe-t-il une syntaxe plus agréable lors de la création d'éléments avec des attributs coupés au lieu d'utiliser:
<%= Html.TextBox ("name", value, new Dictionary<string, object> { {"data-foo", "bar"} }) %>
En regardant les spécifications HTML pour les normes proposées HTML 5 et WIA ARIA, il semble que les tirets dans les attributs HTML sont prévus pour être plus courants comme une sorte d'espacement simple des noms.
Par exemple, HTML 5 propose que les attributs personnalisés soient préfixés par data-
et WIA ARIA utilise le aria-
préfixe pour tous les attributs WIA ARIA.
Lors de l'utilisation des aides HTML dans ASP.NET MVC, par exemple, <%= Html.TextBox("name", value, new { attribute = attributeValue }) %>
l'objet anonyme est converti en dictionnaire.
Malheureusement, en C #, il n'y a pas de support pour les traits d'union dans les noms, donc la seule alternative est de créer un dictionnaire. La syntaxe pour laquelle est très verbeuse, est-ce que quelqu'un a vu une alternative plus agréable ou un moyen simple de modifier la fonctionnalité des extensions HTML d'ASP.NET MVC sans avoir à réécrire l'extension entière?
la source
La réponse fournie sur ActionLink htmlAttributes suggère d'utiliser des traits de soulignement au lieu de tirets. MVC.Net est censé émettre des traits d'union au lieu des traits de soulignement lors de l'envoi de la page au navigateur.
la source