2013-08-13 15 views
13

Sto utilizzando un nuovo modello di applicazione Internet MVC 4 con Visual Studio 2012. Ho installato il pacchetto Nuget per MVC 4 Futures. Nel mio _Layout.cshtml sto costruendo il menu di navigazione.Qual è la sintassi di un ActionLink fortemente tipizzato in MVC 4 con MVC 4 Futures?

Questo funziona e costruisce l'URL corretto:

@ Html.ActionLink ("I clienti", "Index", "Clienti")

Questo è quello che mi piacerebbe lavorare, una variazione fortemente tipizzato:

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

E dolori su "non è possibile scegliere il metodo di gruppo metodo Forse cercavi ad invocare un metodo?", ma qualcosa mi dice che non è il vero problema.

Questo compila ed emette il diritto HTML, ma non in linea:

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

Come si fa a costruire strongly-typed Azione/di ActionLink in MVC 4 utilizzando la sintassi del rasoio (con o senza Futures)?

+0

Ho letto molti libri su asp.net mvc, ma non ho mai visto fortemente il tipo action link, grazie per la bella domanda. –

risposta

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

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

Questo question copre senza stringere eccessivamente.

+0

Questo ha funzionato per me. Grazie! – shanabus

+0

questa sintassi esiste ancora in MVC, non riesco a trovarlo. –

+1

Occorre menzionare che è necessario aggiungere riferimenti a 'Microsoft.Web.Mvc' e ai relativi controller (' MyWebApp.Controllers') –