2011-02-10 4 views
0

일부 인터페이스에서 속성을 상속하는 추상 클래스가 있습니다. 따라서 부동산 부채 측정 필드의 유효성을 검사하는 것은 불가능합니다. 속성을 확인하기 위해 사용자 지정 특성을 구현하는 방법에 대한 아이디어가 있습니까?유효성 검사 속성

public abstract class Collaborator 
{ 
} 

당신은 추상 클래스 공동 작업자를 가지고는, 그럼 당신은 어떤 인터페이스에서 상속 :

interface IPersonInformation 
{ 
    String FirstName { get; set; } 
    String LastName { get; set; } 
} 
interface IRecruitmentInformation 
{ 
    DateTime RecruitmentDate { get; set; } 
} 
/// 
public abstract class Collaborator : IPersonInformation, IRecruitmentInformation 
{ 
    public String FirstName { get; set; } 
    public String LastName { get; set; } 
    public DateTime RecruitmentDate { get; set; } 
} 

그래서 당신이 그들의 백업 필드를 사용하여 Collaborator 클래스의 속성을 확인할 수 없습니다 - 그들은 자동으로 이루어집니다. 속성의 속성을 사용하여 이름의 유효성을 검사하는 방법이 있습니까?

+0

질문이 확실하지 않습니다. 샘플 코드를 제공 할 수 있습니까? –

+0

자동 구현 속성을 사용할 필요가 없습니다. 어쨌든 유효성 검사 속성 (PostSharp, ValidationManager)을 사용할 수 있습니다. –

답변

0
public abstract class Collaborator : IPersonInformation, IRecruitmentInformation 
{ 
    private string firstName; 
    public String FirstName 
    { 
     get { return firstName; } 
     set 
     { 

      //validation code 

      this.firstName = value; 
     } 
    } 
    public String LastName { get; set; } 
    public DateTime RecruitmentDate { get; set; } 
} 

인터페이스를 구현하는 방법으로 잘 작동해야합니다. 나는 속성을 사용하여 이것을 달성하는 더 좋은 방법을 생각할 수 없다.