Вот мой тестовый класс с аннотациями данных:
class Test
{
[Required, StringLength(10)]
public string MyProperty { get; set; }
}
Вот моя консольная тестовая программа:
class Program
{
static void Main(string[] args)
{
var test = new Test {
MyProperty = "this is way more than 10 characters and should fail."
};
var context = new ValidationContext(test, null, null);
// No exception here! (why not?)
Validator.ValidateObject(test, context);
test.MyProperty = null;
// Exception here, as expected
Validator.ValidateObject(test, context);
}
}
По какой-то причине я не получаю исключение проверки, когдаДлина строки слишком велика.Я получаю исключение проверки (как и ожидалось), когда я устанавливаю свойство в null и повторно проверяю.Есть идеи, почему моя аннотация длины строки не применяется?