2017-03-06 58 views
0

我使用NancyFx模型绑定通过路由URL,并试图设置一些验证所需的属性。等级如下表所示:Nancy模型绑定必需的属性验证不工作

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); 
     }; 
    } 

在,我希望有,因为客户端Id必须是某种例外,但它是空当一个新的查询初始化,但没有什么。

失败,在B,我期望有一些错误,当我尝试绑定查询对象。查看调试器,查询对象的Customers属性正确地具有期望值“c1,c2”。但是,查询对象中的ClientId为空,并且没有错误。我想知道我可以做什么来触发一个异常,基于ClientId是必需的。

回答