Пользовательские аннотации данных с RIA Services - PullRequest
10 голосов
/ 06 мая 2010

Это слово предупреждения больше, чем вопрос, если вы используете RIAServices с пользовательскими атрибутами Validator.

Вот Senario, я создавал пользовательскую аннотацию DataAnnotation, которая проверяла бы свойство на основе того, был ли установлен возможный ряд других свойств, например; если Prop1 был 100, то Prop2, Prop3 или Prop4 не могли быть 0, один из них должен быть установлен. Я также использую службы RIA, поэтому я создал ValidatorAttribute мой файл .shared.cs. После написания всех тестов для вспомогательного класса CannotBeZeroIf я начал добавлять атрибуты в класс модели. Это, конечно, когда дело пошло совсем не так. Службы RIA начали работать во время CodeGen с исключением NullReferenceException.

CreateRiaClientFilesTask -> NullReferenceException

Оказывается, это связано с тем, что я использовал конструктор валидатора для передачи значений в класс. При переходе на использование синтаксиса ObjectInitialization все было исправлено.

Ответом представляется использование синтаксиса ObjectInitializer при работе со службами RIA и пользовательскими валидаторами DataAnnotation.

1 Ответ

0 голосов
/ 22 февраля 2011

Ответом представляется использование синтаксиса ObjectInitializer при работе со службами RIA и пользовательскими валидаторами DataAnnotation (это было проще, чем я думал!; -)

...