Answer: Url.RouteUrl is used to generate a fully qualified URL for specified route values by using a route name configured in App_Start/RouteConfig.cs file.
@Url.RouteUrl("MyCustomRoute", new { action = "New", id = 12, Name = "Sheo" })
gives output as /CustomController/New/12?Name=Sheo
Url.HttpRouteUrl is also used to generate fully qualified URL for the specified route values but for Web API Routes. Internally this method add an "httproute" entry to routeValues. GetVirtualPath method of the Web Api route classes return null unless we include "httproute" in the values.
@Url.HttpRouteUrl("MyCustomRoute", new { action = "New", id = 12, Name = "Sheo" })</p>
gives output as /CustomController/New/12?Name=Sheo&
httproute=True.
Notice httproute query-string at the end.
Asked In: Many Interviews |
Alert Moderator