Web API请求中必需且有效的参数

时间:2012-06-07 06:58:34

标签: asp.net asp.net-web-api

我可以以某种方式标记我的"输入对象"这是强制性的行动,需要有效。即如果我有:

public class MyInput
{
  //[SuperNeeded]
  public int FooBar { get; set; }
  public string Other { get; set; }
}

我希望ASP.NET堆栈在没有FooBar的请求或FooBar不是数字时出现异常。这些是有效的:

FooBar=1&Other=abc
FooBar=3

但这些不是(不要让FooBar为0):

FooBar=abc&Other=abc //FooBar is not number
Other=abc //FooBar is missing

任何想法如何轻松实现?

2 个答案:

答案 0 :(得分:1)

您是否尝试过使用RequiredAttribute

答案 1 :(得分:0)

在这种情况下,您需要:

[Required]
public int? FooBar { get; set; }

这样你就不会简单地得到0,如果它丢失你会得到null,如果传入0就会得到0。