powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Валидация данных на сервере и клиенте - как?
19 сообщений из 19, страница 1 из 1
Валидация данных на сервере и клиенте - как?
    #36905276
karapetyan_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Люди подскажите кто как поступает:
Допустим есть класс с 2 полями:
Код: plaintext
1.
2.
3.
4.
MyClass
{
public string Name {get;set;}
public int CityId {get;set;}
}

Я его передаю с помощью Silverlight enabled wcf service со всеми полагающимися методами (Insert, Delete, Update, GetById...)

Предположим так-же что логика приложения требует чтоб длина имени была бы не <1 and > 10
a CityId существовал бы в базе данных. т.е. мой сервис при update, insert проверяет эти ограничения.

как осуществить валидацию только тех данных, которые не зависят от баз данных и т.д. в моем случае только имени? ( причем в случае изменения логики валидации, хочется менять ее только в одном месте)

С уважением, Ашот.
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905285
Вестник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторменять ее только в одном месте
нужно переходить на WCF RIA Services. по-другому, скорее всего никак

авторвалидацию только тех данных, которые не зависят от баз данных
WCF RIA это умеет
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905359
karapetyan_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вестник,
Ria на сколько я понял работает только с sql а у нас oracle
т.е. там надо adoEntity гонять........ что с Oracle несовместим.........
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905386
Вестник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RIA работает с чем угодно. из коробки он (она? они?) работает с EF, который вроде поддерживает оракл. к нему есть ria toolkit, который поддерживает l2sql.

ручками можно сделать вообще все, что угодно. примеры тут в секции Sources of Data
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905393
Вестник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вы, случайно, не системой рассылки смс-ок занимаетесь?
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905431
karapetyan_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вестник,

Нет, пишем корпоративное приложение!
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905455
karapetyan_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вестник,
Спасибо за ссылку, посмотрю.

А как на счет такого варианта:
Методы сервиса, отвчающие за сохранение объектов в базе предварительно будут проверять валидность объектов и сохранять сообщения об ошибках в свойстве самого объекта - Dictionary<string, string> Errors
и отправлять обратно объект с ошибками. а в клиенте расширить объект (он же partial) и реализовать интерфейс INotifyDataErrorInfo который пользует коллкцию Errors?.............. реально?
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905525
Вестник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
реально, только для проверки длины имени или формата даты совсем не обязательно гонять запросы на сервер
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905568
karapetyan_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вестник,

Я сознательно иду на увеличение кол-ва обращений на сервер ради "концентрации" логики валидации в одном месте...
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905593
Вестник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я вам уже писал, что ria умеет один раз написанным кодом валидировать как на на сервере, так и на клиенте, причем без обращения к серверу. это просто совет, вы можете его проигнорировать
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905640
karapetyan_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вестникя вам уже писал, что ria умеет один раз написанным кодом валидировать как на на сервере, так и на клиенте, причем без обращения к серверу. это просто совет, вы можете его проигнорировать

риа просто копирует код валидации с сервера на клиент. но там подводные камни, если к примеру проверка поля зависит от базы данных то на клиенте это не прокатит. соответственно надо будет различать 2 типа валидации "простая" клиентская (required, length, regexp... ) и серверная (Foreign Key, остаток на счету ............ вобщем все что связанно с базой ) далее построить дело так, чтоб первый тип валидации копировался на клиент а второй нет..........

я не поспорить хотел, а объяснить почему варианты типа "риа" не катят, и узнать есть ли другие
варианты.......

Вобщем-то убедился что мой вариант с "server only" валидацией возможен.

Спасибо всем.
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905683
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вестник
Официально EF пока еще не поддерживает оракуль. Бета провайдер от оракуля будет к концу года.
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905750
Вестник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть провайдеры от сторонних компаний
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905812
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Компаний даже? Линк в студию.
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905861
Вестник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.devart.com/dotconnect/oracle/
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905870
Вестник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.devart.com/dotconnect/entityframework.html
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36905899
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ок.

P.S. Не вижу смысла в подобном зоопарке, тем более платном.
P.S2. Для кросс СУБД решений юзаю бесплатную NHibernate, отлаженную столетиями и зарекомендовавшую себя на рынке. Для сиквел решений - EF 4.0 (новых) / Linq 2 SQL (старых).
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36906237
i
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
i
Гость
karapetyan_aя не поспорить хотел, а объяснить почему варианты типа "риа" не катят, и узнать есть ли другие
варианты.......



Другие варианты есть - в CSlA возможны оба.
РИА не катят по другой причине - в SL обязательно нужна модульность, а с этим проблемы
...
Рейтинг: 0 / 0
Валидация данных на сервере и клиенте - как?
    #36906294
Фотография уТКа
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в ria services можно писать CustomValidator и совать туда что душе угодно, хоть генную проверку туда загоните.
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Валидация данных на сервере и клиенте - как?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]