2013-08-13 15 views
13

Używam nowego szablonu aplikacji internetowej MVC 4 z Visual Studio 2012. Zainstalowałem pakiet Nuget dla MVC 4 Futures. W moim _Layout.cshtml buduję menu nawigacyjne.Jaka jest składnia silnie wpisanego ActionLinka w MVC 4 z MVC 4 Futures?

To działa i buduje prawidłowy adres URL:

@ Html.ActionLink ("Klienci", "Index", "Klienci")

To co chciałbym pracować, silnie wpisany odmiana:

@Html.ActionLink<CustomersController>(c => c.Index(), "Customers", null) 

To na smutki „nie można wybrać metodę z grupy metody Czy chodziło Ci wywołać metodę?”, ale coś mi mówi, że nie jest to prawdziwy problem.

To kompiluje i wysyła odpowiednią HTML, ale nie inline:

@{ 
    var t = Html.ActionLink<CustomersController>(c => c.Index(), "Customers"); 
    Response.Write(t); 
} 

Jak zbudować silnie wpisany Akcja/actionlink jest w MVC 4 stosując składnię noża (z lub bez Futures)?

+0

Czytałem wiele książek o asp.net mvc, ale nigdy nie widziałem silnie typu link akcji, dzięki za dobre pytanie. –

Odpowiedz

6
@(Html.ActionLink<CustomersController>(x => x.Index(), "Customers")) 

The Basics – (Strongly-Typed) Linking to MVC Actions

Ten question obejmuje go luźno.

+0

To zadziałało dla mnie. Dzięki! – shanabus

+0

czy ta składnia nadal istnieje w MVC, nie mogę tego znaleźć. –

+1

Powinieneś dodać odniesienia do 'Microsoft.Web.Mvc' i ich kontrolerów (' MyWebApp.Controllers') –