Generieren von URL für eine Ressource in ASP.net Web API außerhalb von ApiController

9

Suchen nach einer Möglichkeit, eine URL für eine bestimmte Ressource in ASP.net Web API zu erstellen oder zu generieren. Es kann im Controller durchgeführt werden, da es von ApiController erbt, daher erhalten Sie den UrlHelper.

Ich versuche, Ressource URL aus dem Kontext des ApiController zu konstruieren.

    
Eatdoku 07.05.2012, 23:51
quelle

3 Antworten

2

Folgendes habe ich getan:

  • Benötigt HttpContext / Request, funktioniert also möglicherweise nicht in Application_Start.
  • Nur in WebApi 1 getestet
  • Funktioniert nur für Routen, die in GlobalConfiguration registriert sind (aber wenn Sie eine andere haben, geben Sie sie einfach weiter)
%Vor%     
Andrey Shchekin 23.10.2014 08:49
quelle
0

Was ist mit den UrlHelper-Klassen?

%Vor%

Der MVC hat einige nützliche statische Methoden, die Routing-Informationen akzeptieren, oder er kann als eine Instanz verwendet werden, die durch die Übergabe eines RequestContext erzeugt wird (der in den meisten MVC-Filtern und verschiedenen anderen Orten verfügbar ist). Die Instanzmethoden sollten genau das sein, was Sie zum Generieren von URLs benötigen.

Der HTTP-Server akzeptiert einen ControllerContext (der auch in den meisten HTTP-Filtern und an verschiedenen anderen Orten verfügbar ist).

    
Andrew 10.07.2012 13:19
quelle
-1

Ich bin mir über den ApiController nicht sicher, da ich ihn vorher nicht benutzt habe. Dies kann dann für Sie überflüssig sein, aber es kann auch nicht sein. Überprüfen Sie Ihre Global.asax.cs-Datei, insbesondere die RegisterRoutes-Funktion. Zu Beginn sollten Sie das folgende Mapping sehen:

%Vor%

Standardmäßig ist Ihre Anwendung so eingerichtet, dass sie Routen im folgenden Format behandelt:

%Vor%

Eine Controller-Klasse, die wie folgt eingerichtet ist, sollte es Ihnen ermöglichen, Anforderungen in diesem Format zu empfangen.

%Vor%     
rposky 08.05.2012 00:02
quelle

Tags und Links