Hereigo
@Hereigo
Пишу на C# + Asp.Net (MVC) + .Net Core

Какие есть технологии, методики или инструменты для упрощения валидации и обработки данных на Front-end и Back-end?

Какие есть технологии, методики или инструменты для упрощения валидации и обработки данных на Front-end и Back-end в случае с ASP.NET MVC приложением?
Когда много различных параметров отправляемых с Фронта на Бэк и обратно + они периодически меняются или дополняются новыми, то легко забыть о какой-то проверке на одной из сторон или не корректно сконвертировать данные и потом долго искать, в каком это месте, AutoMapper падает, к примеру... :)
Подскажите, к то знает, какие-то Best Practice для Fullstack разработки.
Заранее, спасибо!
  • Вопрос задан
  • 269 просмотров
Решения вопроса 1
angrySCV
@angrySCV
machine learning, programming, startuping
Один из подходов (достаточно успешный), использовать единую кодовую базу со статической типизацией.
В которой одна и таже кодовая база (модель данных например), переиспользуется как на бэке, так и на фронте.
Для этого или бэкенд на ЖС набирается (нода), или Фронтэнд (ЖС), генерируется из языка на бэкенде.
Такой подход позволяет очень быстро создавать прототип и его быстро переделывать, при этом можно сделать бесшовную связь бэкенда с фронтэндом без необходимости описывать апи.
Конечно в итоге вы получаете сильно связанный код, который по-хорошему потом все равно переписать надо, однако для прототипирования самое то.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@maltsever
Поскольку мы в разделе ASP.NET, то буду говорить про него. Не знаю каким образом мы можем синхронизировать валидацию на фронтенде и бекенде, мне даже кажется это технически нереализуемо, но могу ошибаться. Если мы говорим о валидации в целом, то мы в первую очередь должны обеспечивать 100% валидацию на стороне сервера, потому что не хотим, чтобы была нарушена целостность данных и т.д. Тут надо руководствоваться принципом fail fast - как можно быстрее проверяем валидность данных из запроса. Чтобы привести валидацию к какому-то организованному виду можно использовать, например, библиотеку FluentValidation.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы