Laden...

Web Api Routing - mehrere Controller mit gleichem Route-Präfix

Erstellt von Wax vor 8 Jahren Letzter Beitrag vor 8 Jahren 832 Views
Wax Themenstarter:in
731 Beiträge seit 2006
vor 8 Jahren
Web Api Routing - mehrere Controller mit gleichem Route-Präfix

Hallo zusammen,

ich schraube zur Zeit an Plug-In Erweiterungen für unsere WebAPI herum. Das Plug-In System funktioniert super. Jetzt fände ich es allerdings genial, wenn ich einen Plug-In Controller schreiben könnte und dieser seine Aktionsmethoden einfach in eine bereits existierende Route "reinhängen" könnte.

Ein Beispiel:

Route-Template des existierenden Controllers:

~/AlteRoute/{action}/{id}

Route-Template des Plug-In Controllers:

~/AlteRoute/{action}/{id}

Leider kommt er beim Aufruf einer Plug-In Methode nicht mehr bis zum Plug-In Controller, sondern die WebAPI sucht nur im alten Controller und findet dort natürlich keine passende MEthode.

Ist das irgendwie möglich?

Gruß,
wax

ps: Ich habe es nur Ansatzweise hinbekommen, indem ich das RouteAttribute direkt an der Plug-In Methode gesetzt habe. Aber das ist in unserem Kontext schlecht umsetzbar, weil die Routen einen konfigurierbaren Präfix-Anteil haben und ich diesen halt an der Stelle nicht hart kodieren kann/will.

16.834 Beiträge seit 2008
vor 8 Jahren

Eigenen Route Resolver (Controller Discovery) schreiben.
Ansonsten ist das nicht möglich, da Routen initial geladen werden.

Eine Route kann übrigens nicht doppelt vergeben werden.
Erster Match greift.