2009-07-04 24 views
5

Uso il motore sparkview con la mia applicazione asp.net mvc. Nelle mie pagine aspx, posso con successo utilizzare Html.ActionLink, ma quando tento in file scintilla, doesnt presentarsi in IntelliSense, e quando provo a farlo funzionare in ogni caso, ottengo:Non è possibile utilizzare Html.ActionLink in asp.net mvc spark files

Visualizzazione dinamica di compilazione non è riuscita . c: \ Users \ midas \ Documenti \ Visual Studio 2008 \ Projects \ ChurchMVC \ ChurchMVC \ Visualizzazioni \ Home \ Index.spark (73,25): errore CS1061: 'System.Web.Mvc.HtmlHelper' non contiene una definizione per 'ActionLink' e nessun metodo di estensione 'ActionLink' accettando un primo argomento di tipo 'System.Web.Mvc.HtmlHelper' potrebbe essere trovato (ti manca una direttiva using o un riferimento di assembly?)

Ho un sistema .web.mvc riferito, e ho aggiunto in _global.spark. Niente di tutto ciò aiuta. Qualche idea?

risposta

9

(Copiato dalla risposta di Rei Roldán in Spark discussion group)

Questo è dove gli aiutanti vivono.

<use namespace="System.Web.Mvc.Html" /> 
1

Ho avuto lo stesso problema con Html.ActionLink nel layout master. Il motivo era la codifica Html automatica. Risolto impostando <pages automaticEncoding="false"> in web.config o usando! {Html.ActionLink (...)} invece di $ {Html.ActionLink (...)}

+0

Oops! Scusa, ho mescolato due articoli, non "lo stesso problema", uno diverso. – ILog

4

È possibile ottenere questo errore anche con Web corretto .config dichiarando ActionLink con tipi di argomenti errati.

Esempio:

<%= Html.ActionLink(1, "bar") %> 

Errore:

Compiler Error Message: CS1928: 'System.Web.Mvc.HtmlHelper<Approval.WebSite.ViewsModels.HomeIndexPage>' does not contain a definition for 'ActionLink' and the best extension method overload 'System.Web.Mvc.Html.LinkExtensions.ActionLink(System.Web.Mvc.HtmlHelper, string, string)' has some invalid arguments 

Anche se questo funziona:

<%= Html.ActionLink("foo", "bar") %> 

in modo da controllare il tuo markup pure.

Problemi correlati