Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Strongly Typed ActionLink In Asp.Net MVC 2?

I just downloaded VS.NET 2010 RC and created a new MVC project. It would seem that strongly typed ActionLinks are not in this release? Is this always going to be a "futures" thing? Or am I missing something?

<%=Html.ActionLink<HomeController>(x => x.Index(),"Home")%>
like image 920
mxmissile Avatar asked Feb 10 '10 20:02

mxmissile


2 Answers

Strongly-typed ActionLink and route helpers are not scheduled to be moved from Futures to the main product any time soon. In general it's not possible to run the MVC pipeline backward. That is, given a MethodInfo and parameters, it's impossible to make a route which is guaranteed to hit that action. For example, custom controller factories, action invokers, filters, existing files, or any number of other things can affect which action (if any) a particular route ends up hitting.

Because of this, the contract for strongly-typed ActionLink in Futures is essentially "given this information and assuming no extensibility hooks, guess which route will hit this action." Such a contract is inappropriate for actual supported framework code.

like image 200
Levi Avatar answered Oct 06 '22 06:10

Levi


No there is no ActionLink<> see ScottGu blog (( For performance reason.

re: ASP.NET MVC 2: Strongly Typed Html Helpers Tuesday, January 12, 2010 2:32 AM by ScottGu

@Anthony,

but what about strongly typed ActionLinks?

We aren't adding built-in runtime helpers for this - but David Ebbo has created a nice VS tooling add-on that creates strongly-typed helpers you can use: aspnet.codeplex.com/wikipage

Hope this helps,

Scott

like image 39
Sergey Mirvoda Avatar answered Oct 06 '22 04:10

Sergey Mirvoda