2014-05-19 19 views
17

Ho Microsoft Visual Studio Express 2013 per Web, versione 12.0.30501.00 Update 2. Ho una soluzione con 2 progetti, uno è un API Web e il secondo è un MVC progetto destinato per le viste. Ho creato una semplice web api che restituisce httpresponsemessage e posso andare in violinista e vedrò la risposta json. Tuttavia nel mio secondo progetto quando ho tentato di chiamare attraverso ajax ho ricevuto un errore di dominio incrociato.Abilitazione API Web ASP.net Cross Domain

La soluzione che cerco di seguire è questa http://www.asp.net/web-api/overview/security/enabling-cross-origin-requests-in-web-api. Tuttavia, quando ho installato Install-Package Microsoft.AspNet.WebApi.Cors -pre -project WebService nel gestore della console ho ricevuto un errore, quindi ho usato questa riga. Install-Package Microsoft.AspNet.WebApi.Cors Allora provo alla fase successiva che è config.EnableCors(); suo stato che

'System.Web.Http.HttpConfiguration' does not contain a definition for 'EnableCors' and no extension method 'EnableCors' accepting a first argument of type 'System.Web.Http.HttpConfiguration' could be found (are you missing a using directive or an assembly reference?) 

io non sono sicuro di cosa dopo, cerco anche di aggiungere using System.Web.Http.Cors; ma affermano che lo spazio dei nomi non esiste. Questo studio visivo è stato scaricato circa 3 settimane fa, ritengo che questa funzione non dovrebbe essere difficile da installare in quanto pienamente supportata, c'è qualcosa che mi manca?

+0

Qual è l'errore che si ottiene in Package Manager? Hai provato a installare questo pacchetto NuGet tramite la GUI? – SoftwareFactor

+0

quale versione .NET stai usando? – Jonesopolis

+0

Il framework è 4.5.50938 e no non ho provato a installarlo tramite nuget tramite gui, e viene installato – Jseb

risposta

33

È necessario installare un pacchetto Nuget Microsoft.AspNet.WebApi.Cors

Dal menu in Visual Studio, andare a Gestione pacchetti, e quindi digitare il nome del pacchetto

Nota :
installare dal Package manager Console, utilizzare Install-Package Microsoft.AspNet.WebApi.Cors

+0

Ho dovuto installarlo dalla riga di comando come non sarebbe mostrato nella lista. – Demodave

+1

Pacchetto di installazione Microsoft.AspNet.WebApi.Cors – Ads

10

installare un pacchetto Nuget `" Microsoft.AspNe t.WebApi.Cors"(version = "5.1.0")

Add seguente riga nel file di WebApiConfig.cs

config.EnableCors(new EnableCorsAttribute("*", "*", "*"));