내 이전 질문에이어서, Transaction
클래스에 source
이라는 nullable
char
이라는 이름이 있습니다.Fluent apply RuleFor가 값이 null이 아닌 경우에만
//source isnt required but when present must be 1 character 'I' or 'M'
RuleFor(transaction => transaction.source.ToString())
.Matches("^[IM]?$")
.When(t => t.source.Value != null);
Matches
으로
및 When
나는 때문에 변환 할 수없는 존재에 새 Transaction
객체가 생성 될 때, 소스 속성이 null
경우, 응용 프로그램이 실패, 그러나 .ToString()
방법을 사용하고하는 char
을 사용할 수 없습니다 null
의 소스는 입니다.
는 사람 만 소스가 null
없는 경우 소스 에 대한 유효성 검사를 실행하는 방법을 제안 할 수 있습니다? 나는 내가 작성한 When 표현식이 이것을 할 것이라고 가정하고, 소스가 null
일 경우 유효성 검증 프로세스의이 부분을 생략하지만 유효성 검증의 부분을 ToString()
과 관계없이 처리하려고 시도하므로 오류가 발생합니다.
나는 당신의 제목을 편집했습니다. 질문 제목에 사용 된 언어에 대한 정보가 없으면 이해할 수없는 경우를 제외하고는 해당 정보를 포함하지 마십시오. 태그는 이러한 용도로 사용됩니다. 또한 "[질문에"제목에 "태그"를 포함해야합니까?] "(http://meta.stackexchange.com/q/19190/193440), 컨센서스는"아니오, 그렇지 않아야합니다. – chridam