Ich habe kürzlich Microsoft.AspNet.WebApi.WebHost
zu einem MVC WebAPI-Projekt hinzugefügt, das es mir ermöglichen würde, das Attribut [Route("api/some-action")]
für meine Aktion zu verwenden. Ich habe einige Fehler mit this article gelöst, kann aber den dritten Fehler unten nicht lösen. Die unten aufgelösten Fehler wurden hinzugefügt, um Feedback zu erhalten, wenn ich etwas falsch gemacht habe.Eine Route mit dem Namen 'MS_attributerouteWebApi' befindet sich bereits in der Routensammlung
erster Fehler: Es wurde keine Aktion auf dem Controller 'X' gefunden, die den Namen übereinstimmt 'some-Aktion'
Lösung: config.MapHttpAttributeRoutes();
zu WebApiConfig.cs Register
Methode hinzugefügt.
Zweiter Fehler: System.InvalidOperationException Das Objekt wurde noch nicht initialisiert. Stellen Sie sicher, dass HttpConfiguration.EnsureInitialized() im Startup-Code der Anwendung nach allen anderen Initialisierungscodes aufgerufen wird.
Lösung: GlobalConfiguration.Configure(WebApiConfig.Register);
Hinzugefügt Application_Start
Dritter Fehler Global.asax.cs: System.ArgumentException: Eine Route namens 'MS_attributerouteWebApi' ist bereits in der Route-Kollektion. Routennamen müssen eindeutig sein.
Lösung =?
Ich habe bereits versucht, alle DLLs aus bin Ordner nach this post zu reinigen und zu löschen.
GlobalConfiguration.Configure (WebApiConfig.Register); war die erste Zeile in meinem global.asax und es scheint das gleiche zu tun. –