2017-03-06 1 views
0

라우팅 URL을 통해 NancyFx 모델 바인딩을 사용 중이며 필수 속성에 대한 유효성 검사를 설정하려고합니다. 클래스는 다음과 같다 :낸시 모델 바인딩 필요 특성 유효성 검사가 작동하지 않습니다.

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

는, 나는이 된 ClientID가 필요하기 때문에 예외의 어떤 종류가있을 것으로 예상하지만 새로운 쿼리 인 경우는 null의 경우 다음과 같이

public class Query 
{ 
    [Required] 
    public string ClientId { get; set; } 
    public List<string> Customers { get; set; } 
} 

내 경로입니다 초기화되었지만 아무것도 없습니다.

B에서 Query 개체를 바인딩하려고하면 일종의 오류가 발생할 것으로 예상됩니다. 디버거를 보면 쿼리 개체의 Customers 속성이 "c1, c2"의 예상 값을 올바르게 갖고 있습니다. 그러나 쿼리 개체의 ClientId는 null이며 오류가 없습니다. ClientId가 필요하다는 사실을 기반으로 예외를 트리거하기 위해 내가 할 수있는 일이 궁금합니다.

답변

관련 문제