0
için Min/max çift

Ben aşağıdaki API yöntemi vardır:WebAPI: RouteAttribute

[Route("GetEditorialRequestsByCoordinates/{lat:double}/{lng:double}")] 
[AutomapperExceptionApiFilterAttribute] 
public HttpResponseMessage GetEditorialRequestsByCoordinates(double lat, double lng) 
{ 

} 

o gibi istek için çalışıyor:

GET /v1/api/request/GetEditorialRequestsByCoordinates/48.999/2.777/ 

Ama sınırı (minimum ve maksimum) eklemek istediğiniz lat ve lng için.

bu yazıyı takip edin: http://www.asp.net/web-api/overview/web-api-routing-and-actions/attribute-routing-in-web-api-2

max maksimum değere sahip bir tamsayı ile eşleşir. {x: max (10)}

dk Minimum değere sahip bir tam sayı ile eşleşir. {X: dakika (10)}

deneyin bu yol oluşturmak için:

[Route("GetEditorialRequestsByCoordinates/{lat:double:min(-90):max(90)}/{lng:double:min(-180):max(180)}")] 

ve 404 hata olsun. Niye ya?

cevap

2

Verdiğiniz dokümantasyon fonksiyonları tamsayı için çalıştığını söyler

max: maksimum değere sahip bir tamsayı ile eşleşir. {x: maks (10)}

Sanırım iki kişilik çalışmıyor.

, kendi IHttpRouteConstraint'inizi oluşturmak için bu link görebilirsiniz.

+0

Bunu gördüm, ancak maksimum (min) değeri yalnızca tamsayı değeri olarak ayarlayabildiğimiz gibi anlaşıldı, ancak aralık –

+0

@OlegSh herhangi bir sayı türü için çalışacak, bunu aralıklı ve iki kat çalışacak şekilde aldınız mı? – Nkosi

+0

Eğer bana söylersen, senin için iki katını destekleyen bir kod yazacağım. –