Re[3]: Валидация данных
От: Sinclair Россия https://github.com/evilguest/
Дата: 13.05.10 14:30
Оценка:
Здравствуйте, Аноним, Вы писали:

А>По идее так и есть, обобщенный вариант решения — нужно создать некий универсальный язык и 2 транслятора, один в код C# ( код серверного приложения ) другой в JavaScript ( код клиентского приложения ). Код трансляторов будет написан 1 раз и зафиксирован, причем трансляцию можно проводить перед компиляцией веб-приложения, тем самым не будет издержек производительности.


А>Как вариант можно взять один из уже существующих языков, например клиенский или серверный.


А> — создать утилиту которая преобразовывает метод IsValid класса из C# в соотвветсвующую функцию JavaScript, например в validatorlogin_IsValid()

А> — настроить сборку чтобы сначала запускалась утилита и генерила соответстующий js файл validators.js

А ещё лучше ознакомиться с тем, что уже достигнуто в данной области. Напрмер, здесь.
Всё уже давным-давно украдено. Как минимум длины, ограничения на инты, и регулярные выражения присутствуют как данность.
Для более экзотических сценариев совершенно необязательно писать утилиту, которая будет уметь парсить не самый простой язык С# и придумывать для него JavaScript — аналог.
Можно взять готовое дерево выражений, и работать сразу с ним, заморачивась исключительно back-end-ом.
Тогда в коде можно будет написать что-то вроде
AddValidator((string name)=>name.ToUpper()==name, "Uppercase string required");

А относительно рутинный код будет обходить дерево и превращать его в JavaScript-аналог.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.