ASP.NET # MVC # 17 – Html.ActionLink and Html.RouteLink Helper Methods
Hi Geeks,
Today we will see Html.ActionLink and Html.RouteLink Helper methods.
I )Html.ActionLink
** The ActionLink method renders a hyperlink (anchor tag) to another Controller action. This method uses the Routing API under the hood to generate the URL. For example, when linking to another action within the same Controller used to render the current View, you can simply specify the action name:
<%: Html.ActionLink("Link Text", "AnotherAction") %>
This produces the following markup, assuming the default routes:
<a href=”/Home/AnotherAction”>LinkText</a>
You can specify a Controller name as the third argument to link to an action of another Controller.For example, to link to the AccountController.Withdraw action, use:
<%: Html.ActionLink("Link Text", "Withdraw", "Account") %>
Note :Notice that you specify the Controller name without the Controller suffix. You never specify the Controller’s type name.
In many cases, you have more route parameters than you need to supply in order to choose the correct URL to render for the action link. In that case, you can specify a RouteValueDictionary for the routeValues argument. The following example uses the overload that accepts the anonymous object overload for route values to specify the ID:<%: Html.ActionLink("Link Text", "Withdraw", "Account", new {id=34231}, null) %>
** To specify HTML attributes, provide a value for the htmlAttributes argument. This accepts an IDictionary<string, object>, but for ease of use, you can call the overload that accepts an anonymous object:
<%: Html.ActionLink("LinkText", "About", "Account", null,
new {title="withdraw from account"}) %>
II) Html.RouteLink
The ActionLink methods have specific knowledge about ASP.NET MVC Controllers and actions.
Hence, these methods provide convenient overloads that allow the specifying of a controllerName and actionName directly.
The RouteLink methods follow the same pattern as the ActionLink methods but also accept a
route name and do not have arguments for Controller name and action name. For example, the first example ActionLink shown previously is equivalent to the following:
<%: Html.RouteLink("Link Text", new {action="AnotherAction"}) %>
(REFERENCE – Professional.ASP.NET.MVC.2 Wrox publication)
Hi i am kavin, its my first occasion to commenting anywhere, when i read this article
i thought i could also create comment due to this brilliant
post.
I seldom leave a response, however i did a few searching and wound up here ASP.
NET # MVC # 17 – Html.ActionLink and Html.RouteLink Helper Methods | Microsoft Mentalist.
And I do have 2 questions for you if you don’t mind. Could it be only me or does it look like a few of these responses come across like they are left by brain dead visitors? 😛 And, if you are posting on other online social sites, I would like to follow anything fresh you have to post. Could you make a list of the complete urls of all your communal pages like your twitter feed, Facebook page or linkedin profile?
Ahaa, its fastidious conversation about this piece of writing here at this weblog, I have read all that, so at this time me
also commenting here.
Attractive section of content. I just stumbled upon your blog and in accession capital to
assert that I acquire in fact enjoyed account your blog posts.
Anyway I’ll be subscribing to your feeds and even I achievement you access consistently fast.
Hi there! Do you use Twitter? I’d like to follow you if that would be
ok. I’m definitely enjoying your blog and look forward to new posts.
Wow that was unusual. I just wrote an incredibly long comment but after
I clicked submit my comment didn’t show up.
Grrrr… well I’m not writing all that over again.
Anyway, just wanted to say fantastic blog!
Touche. Outstanding sprzątanie arguments. Continue the good work.
This particular post sprzątanie is priceless. Where will
I garner more information?
I think that is among the most vital info for me. And i am glad studying your article.
However wanna observation on some normal things, The site taste is ideal, the articles is actually excellent :
D. Good process, cheers