2009-03-12 11 views
1

は、私はC#で使用すると、このように、インラインRouteValueDictionaryインスタンスを作成することができると思います。Visual BasicでASP.NET MVC Html.RouteLinkを使用するにはどうすればよいですか?

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

Visual Basicで同等とは何ですか?

これは動作しますが、非常に長ったらしいです:

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

<%=Html.RouteLink(Model.Name, "SomeRoute", d)%> 

答えて

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

だけ明確にするために、あなたが実際にこの構文でインラインRouteValueDictionaryを作成していません。新しい匿名タイプを作成し、RouteLink(linkText As String, routeName As String, routeValues As Object)のオーバーロードを使用しています。このオーバーロードは内部的に反射を使用して、匿名オブジェクトのプロパティとその値をRouteValueDictionaryに追加してリンクを作成します。

関連する問題