Asp.net webapi enum-parameter mit default-Wert

Ich habe einen controller

   [HttpGet]
    [RoutePrefix("api/products/{productId}")] 
    public HttpResponseMessage Products(int productId,TypeEnum ptype=TypeEnum.Clothes)
{
    if(!Enum.IsDefined(typeOf(TypeEnum),ptype))
      //throw bad request exception
    else
      //continue processing
}

Myenum erklärt wird

public TypeEnum
{
  Clothes,
  Toys,
  Electronics
}

Derzeit, wenn,einigen Müll Wert übergeben wird, es wird immer umgewandelt in Standardwert.
Was ich tun möchte, wenn ich rufen Sie die controller-api/Produkte/1 dann den ptype zugewiesen werden soll default-Wert ich.e Kleidung. Wenn ich rufen Sie die controller-api/Produkte/1?pType=somegarbagevalue dann sollte der controller werfen bad request Ausnahme. Wie kann ich das erreichen?

InformationsquelleAutor user3832953 | 2014-07-13
Schreibe einen Kommentar