Visual BasicでASP.NET MVC Html.RouteLinkを使用するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/639893

  •  11-07-2019
  •  | 
  •  

質問

C#では、次のようにインラインRouteValueDictionaryインスタンスを作成できると思います:

<%=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)%>
役に立ちましたか?

解決

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

他のヒント

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

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top