Условное подтверждение Silverlight 4 - PullRequest
0 голосов
/ 22 марта 2011

Мне нужно иметь возможность проверить некоторые элементы управления, и я не уверен, как лучше всего это сделать.Некоторая проверка должна быть все время похожа на проверку длины строки в определенных свойствах.Это казалось достаточно простым.

Мне нужно иметь возможность проверить обязательные поля, но это приложение должно позволять частичное сохранение, поэтому мне нужно иметь возможность проверить некоторые условия (например, флажок на экране) и, если это условиевыполняется, затем требуется проверка, но разрешите сохранение, если флажок снят.

Я реализовал это с помощью пользовательского валидатора, и все работает нормально на стороне клиента, но как только я пытаюсь сохранить, проверка проверяется нана стороне сервера, и он выдает исключение.

Я использую аннотации EF с данными в метаданных RIA, чтобы пометить свойства с помощью валидаторов.

Если кто-то может указать мне правильное направлениео том, как этого добиться, я был бы признателен.

Ответы [ 2 ]

0 голосов
/ 20 мая 2011

Это показывает, что вы реализовали CustomValidation на стороне клиента.

Вы должны создать этот класс CustomValidation на стороне сервера в файле " .shared.cs ", чтобы настраиваемая проверка была доступна как на сервере, так и на сервере. клиент. RIA скопирует этот валидатор на клиента.

Убедитесь, что у вас есть свойство в вашем классе модели (может быть, дополнительное свойство?), И привяжите свой checkBox к этому свойству. Сервер будет знать, какой вид проверки будет использоваться.

И, наконец, используйте пользовательскую проверку для класса метаданных RIA на стороне сервера! И снова RIA скопирует эту проверку на клиент.

0 голосов
/ 05 апреля 2011

Если вы выполняете проверки в своей модели представления в установщике свойств, вы можете условно просто генерировать исключения, если ваш xaml связан с w / ValidatesOnExceptions = True, вы должны получить желаемое поведение.

...