Kombinieren von Routenzuordnungen in WebApi

8

Ich verwende Routing in meiner WebApi Katana-Anwendung. Ich habe die folgenden zwei Routen-Mappings, die gut funktionieren. Meine Frage ist, kann ich diese zu einem einzigen Routen-Mapping mit optionalen Parametern kombinieren? Ich kann keinen offensichtlichen Weg sehen, dies zu tun und die erforderliche Funktionalität beizubehalten. Ich bin neu in diesem Bereich und habe vielleicht eine Technik vermisst, die mir hilft, dies zu erreichen. Wenn die Routen so bleiben müssen, ist das kein Problem.

%Vor%

Die erforderliche Funktionalität besteht darin, einen Dienst aufzuheben, indem Sie die folgenden Details angeben:

%Vor%     
Retrocoder 16.12.2014, 14:53
quelle

1 Antwort

11

In ASP.NET Web API 2 können Sie das Attribut routing verwenden und müssen nicht alle Routen auf diese Weise mit MapHttpRoute definieren.

Die Erklärung kann hier .

In Ihrem Owin Startup müssen Sie das Attribut-Routing mit MapHttpAttributeRoutes :

%Vor%

und Ihr Controller sollte etwa so aussehen:

%Vor%

Wie Sie sehen können, habe ich RuotePrefix verwendet, um die Endpoint- und Route-Constraints zur Begrenzung von Parametern zu verwenden, wie in dem Artikel vorgeschlagen. Sie können sogar eigene benutzerdefinierte Einschränkungen erstellen.

Der Artikel schlägt vor, dass Sie das Paket NuGet Microsoft.AspNet.WebApi.WebHost installieren müssen. Das ist nicht mehr nötig.

    
LeftyX 16.12.2014, 22:54
quelle