Pergunta

Eu acho que em C # você pode criar em linha casos RouteValueDictionary como este:

<%=Html.RouteLink(Model.Name, "SomeRoute", new { id = Model.Id }) %>

O que é o equivalente em Visual Basic?

Isso funciona, mas é bastante prolixo:

<%
    Dim d As New RouteValueDictionary()
    d.Add("id", Model.Id)
%>

<%=Html.RouteLink(Model.Name, "SomeRoute", d)%>
Foi útil?

Solução

<%=Html.RouteLink(Model.Name, "SomeRoute", New With {.id = Model.Id})%>

Outras dicas

Só para esclarecer, você não está realmente criando um inline RouteValueDictionary com esta sintaxe. Você está criando um novo tipo anônimo, e usando a sobrecarga RouteLink(linkText As String, routeName As String, routeValues As Object). Esta reflexão usos de sobrecarga (presumo) internamente para adicionar as propriedades do seu objeto anônimo e seus valores para um RouteValueDictionary para criar o link.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top