2014-02-07 2 views
0

PCL 프로젝트에서 간단한 유효성 검사를 수행하려고합니다.속성 수준의 유효성 검사

여기 내가이 유효성 검사를 수행하는 이유는 으로 Android 및 IOS와 같은 다른 플랫폼에서도 사용할 수 있습니다. 다음은

내 코드는 지금까지 시도된다

private string _mobileNumber; 
     public string MobileNumber 
     { 
      get { return _mobileNumber; } 
      set { _mobileNumber = MobileNumberValidation(value); RaisePropertyChanged(() => MobileNumber); } 
     } 

검증 방법 : 내 접근 방식이 잘못되면

public string MobileNumberValidation(string theMobileNumber) 
     {   
      Regex regexExpression = new Regex(@"^(\+91[\-\s]?)?[89]\d{9}$"); 
      regexExpression.IsMatch(theMobileNumber); 
      return "Heck its works "; 
     } 

저를 수정?

+0

내가 당신의'MobileNumberValidation' 방법은 참/거짓 반환해야합니다, 자, 여기 유효성 검사 코드 –

+2

이 표시되지 않습니다. 그리고 당신의 속성 세터에서는 true 값이 반환 될 때 값을 갱신하고'propertychanged'를 올립니다. –

답변

1

이 시도 : 당신이 정말로 그것을 그런 식으로 수행하려는 경우

private string _mobileNumber; 

public string MobileNumber 
{ 
    get { return _mobileNumber; } 
    set 
    { 
     if (!MobileNumberValidation(value)) 
     throw new Exception("Invalid mobile number"); 

     _mobileNumber = value; 
     RaisePropertyChanged(() => MobileNumber); 
    } 
} 

private bool MobileNumberValidation(string theMobileNumber) 
{   
    Regex regexExpression = new Regex(@"^(\+91[\-\s]?)?[89]\d{9}$"); 
    return regexExpression.IsMatch(theMobileNumber); 
} 
관련 문제