DataAnnotationを組み合わせて再利用する方法はない?

public class A {
[Required]
[StringLength(10)]
[Display(Name = "ItemCode")]
string ItemCode { get; set; }
}
public class B {
[StringLength(10)]
[Display(Name = "ItemCode")]
string ItemCode { get; set; }
}

こうじゃなくて

public class A {
[Required]
[ItemCodeValidation]
string ItemCode { get; set; }
}
public class B {
[ItemCodeValidation]
string ItemCode { get; set; }
}

こうしたい