• Трехуровневая архитектура ASP.NET MVC. Где проводить валидацию данных?

    MiniBegemot
    @MiniBegemot Автор вопроса
    Петр: Т.е. вы предлагаете следующее: валидируем данные на стороне клиента (Javascript), отправляем в контроллер, контроллер отправляет данные в BLL и там данные опять валидируется и только затем передаются в DAL? Ну в принципе я так и хотел делать, но является ли это правильным со стороны проектирования? Т.е. если в будущем если мы изменим способ валидации (к примеру не 50 символов а 49), нам придется менять проверку сразу и в BLL и в Javascript? Просто я делаю тестовое задание, мне надо его сделать максимально правильно, чтобы меня взяли на работу).
    И еще такой вопрос, где происходит валидация регулярных выражений, к примеру для EMAIL, опять же и на клинет, и в BLL?
  • Трехуровневая архитектура ASP.NET MVC. Где проводить валидацию данных?

    MiniBegemot
    @MiniBegemot Автор вопроса
    П.С. Также меня мучает вопрос, обязательно ли использовать на каждом уровне свои уникальные объекты? Т.е. на уровне DAL будут к примеру: User, на уровне BLL UserDTO, на уровне UI UserView. Или можно на всех трех уровнях использовать объект User?
  • Трехуровневая архитектура ASP.NET MVC. Где проводить валидацию данных?

    MiniBegemot
    @MiniBegemot Автор вопроса
    Ну к примеру, пользователю надо ввести свое ФИО, нам на уровне представления кроме соответствия типов надо еще проверить, а не превышает ли он длину к примеру 50 символов, и на уровне BLL опять же будет это проверят. Как тут быть? Если прислушаться вашего совета, то на уровне представления, длину проверять мы не будет, но в случае если на уровне BLL выясниться что он превысил длину в 50 символов, как мне сообщить это пользователю? Вот в чем я запутался.