Я сейчас перевожу свой код .NET 3.5 в .NET 4.0, где я реализовал свою собственную логику проверки. Использование аннотаций данных для проверки данных, кажется очень привлекательным, я просто не могу заставить его работать жестко ...
Ниже приведен упрощенный пример того, чего я пытаюсь достичь.
Коллекция результатов, переданная в TryValidateObject, всегда имеет счетчик 0.
Что я делаю не так?
public class CreateBuskerMemberCommand : Command
{
[Required]
public string SomeValue;
public string SomeOtherValue;
public CreateBuskerMemberCommand ( ..)
{
// pass values to fields..
}
public void Execute()
{
// force error for testing purpose
SomeValue = null;
ValidationContext context = new ValidationContext(this, null, null);
List<ValidationResult> results = new List<ValidationResult>();
System.ComponentModel.DataAnnotations.Validator.TryValidateObject(this, context, results);
// results count = 0
}
}