Чтобы настроить валидаторы, которые вы можете унаследовать от ValidationAttribute:
public class SomeAttribute : System.ComponentModel.DataAnnotations.ValidationAttribute
{
public override bool IsValid(object value)
{
}
}
Я думаю, вам не нужно этого делать, но вместо этого следует попробовать сделать строку, допускающую обнуляемую длину, и иметь валидаторы в этом свойстве.
public string ProvinceId { get; set; }
Затем конвертируйте вашу модель представления в некоторую модель домена, которая имеет значение NULL, если проверка прошла успешно.