2016-06-07 6 views
0

ich eine Standard-Routing haben,Wie man UrlParameter.Optional {id} leere Werte zu akzeptieren, und die Arbeit noch in WEB-API

Default Routing: http://localhost:4709/v1/{controller}/{id}

und ich versuche, eine neue zu erstellen Routing

My Routing: http://localhost:4709/v1/{controller}/{id}/orders

Meine Aktion kann id mit Nullwert annehmen

[HttpGet] 
public TotalOrders Get(string id) 
{ 
    //return 
} 

Wie man dies erreicht, wenn ich dies mache, bekomme ich keine Aktion wurde auf dem Controller 'KD' gefunden, die der Anfrage entspricht.

+0

Was ist die Anfrage, die Sie senden möchten? – Toxicable

+0

Es ist eine Get Request mit oder ohne ID. –

+0

Können Sie ein Beispiel für die Anfrage-URL angeben, die Sie senden möchten – Toxicable

Antwort

0

Man könnte es so definieren, http://localhost:4709/v1/ {Controller}/{*} andere

Der '*' können mehrere '/'. Wie http://localhost:4709/v1/controller/5/orders. Also wären andere eine Folge von 5/Ordnungen. Sie müssten Ihren eigenen kleinen Parser schreiben. (Null-Check, Split '/', etc.) Ein anderer Weg ist nicht möglich, da optionale Parameter immer am Ende sein müssen.