Применение аннотаций данных к подчиненным свойствам модели представления в MVC?
Помещать простые аннотации данных в свойствах - это здорово,
public class UnicornViewModel
{
[Required]
public string Name { get; set; }
Но скажем, яу меня есть что-то вроде этого:
public class SuperPower
{
public class Name { get; set; }
}
public class UnicornViewModel
{
[Required]
public string Name { get; set; }
public SuperPower PrimarySuperPower { get; set; }
public SuperPower SecondarySuperPower { get; set; }
Как применить атрибут Required к PrimarySuperPower.Name, оставив его необязательным для SecondarySuperPower.Name? Предпочтительно 1. что-то, что связано с проверкой на стороне клиента и 2. без какой-либо специальной обработки, такой как проверка значения PrimarySuperPower.Name в валидаторе Action / Custom и добавление ошибки ModelState, если она 'пусто Было бы здорово, если бы было что-то вроде:
[Required(p => p.Name)]
public SuperPower PrimarySuperPower { get; set; }
public SuperPower SecondarySuperPower { get; set; }