Comment utiliser ASP.NET MVC Html.RouteLink dans Visual Basic?
-
11-07-2019 - |
Question
Je pense qu'en C #, vous pouvez créer des instances en ligne de RouteValueDictionary comme ceci:
<%=Html.RouteLink(Model.Name, "SomeRoute", new { id = Model.Id }) %>
Quel est l'équivalent dans Visual Basic?
Cela fonctionne, mais reste assez verbeux:
<%
Dim d As New RouteValueDictionary()
d.Add("id", Model.Id)
%>
<%=Html.RouteLink(Model.Name, "SomeRoute", d)%>
La solution
<%=Html.RouteLink(Model.Name, "SomeRoute", New With {.id = Model.Id})%>
Autres conseils
Juste pour clarifier, vous ne créez pas réellement un RouteValueDictionary en ligne avec cette syntaxe. Vous créez un nouveau type anonyme et utilisez la surcharge RouteLink (linkText As String, routeName As String, routeValues ??As Object)
. Cette surcharge utilise la réflexion (je suppose) en interne pour ajouter les propriétés de votre objet anonyme et leurs valeurs à un RouteValueDictionary pour créer le lien.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow