Links in asp.net
There are serveral helper class which help to generate links.
//When you generate link with the same controller Html.ActionLink(); //When you generate link with the different controller Html.RouteLink(); Ajax.ActionLink(); //ajax version of Html.ActionLink(..) Ajax.RouteLink(); //ajax version of Html.RouteLink(..) //generate url only, not anchor tag Url.RouteUrl(); //eventually all method will call internal static string GenerateUrl(string routeName, string actionName, string controllerName, RouteValueDictionary routeValues, RouteCollection routeCollection, RequestContext requestContext, bool includeImplicitMvcValues) { RouteValueDictionary mergedRouteValues = RouteValuesHelpers.MergeRouteValues(actionName, controllerName, requestContext.RouteData.Values, routeValues, includeImplicitMvcValues); VirtualPathData vpd = routeCollection.GetVirtualPath(requestContext, routeName, mergedRouteValues); if (vpd == null) { return null; } string modifiedUrl = PathHelpers.GenerateClientUrl(requestContext.HttpContext, vpd.VirtualPath); return modifiedUrl; }