我通过路由网址使用NancyFx模型绑定,并尝试为所需属性设置一些验证。课程如下:
public class Query
{
[Required]
public string ClientId { get; set; }
public List<string> Customers { get; set; }
}
我的路线如下:
Get["/test?customers=c1,c2"] = args =>
{
var query = new Query(); // A
try
{
query = this.Bind<Query>(); // B
}
catch (ModelBindingException ex)
{
throw ex;
}
return db.Execute(Query);
};
}
在A,我预计会出现某种异常,因为ClientId是必需的,但是当初始化一个新的Query时它是null,但没有任何异常。
如果不这样,在B,我预计在尝试绑定Query对象时会出现某种错误。查看调试器,查询对象的Customers属性正确具有&#34; c1,c2&#34;的预期值。但是,查询对象中的ClientId为null,并且没有错误。我想知道如何根据需要ClientId来触发异常。