Ключ рискует при использовании ASP.NET MVC впервые

Идиоматическим способом было бы использовать обработчик исключений вместо перехвата исключения в обычном методе обработки запросов. Тип исключения определяет код ответа. (403 за ошибку безопасности, 500 за непредвиденные исключения платформы, что угодно)

@ExceptionHandler(MyApplicationException.class)
@ResponseStatus(HttpStatus.BAD_REQUEST)
public String handleAppException(MyApplicationException ex) {
  return ex.getMessage();
}

@ExceptionHandler(Exception.class)
@ResponseStatus(HttpStatus.INTERNAL_SERVER_ERROR)
public String handleAppException(Exception ex) {
  return ex.getMessage();
}
10
задан Jk1 7 July 2014 в 10:51
поделиться

4 ответа

Самые большие риски, которые я видел, связаны с возвратом к среде без состояния.

Постбэк больше нет. Большинство серверных элементов управления ушли. Viewstate больше нет. Модель, управляемая событиями, больше не существует.

Если ваши разработчики использовали ТОЛЬКО веб-формы asp.net для создания сайтов, а не какую-либо другую веб-технологию, им предстоит много учиться.

2
ответ дан 4 December 2019 в 01:03
поделиться

Используйте строго типизированные представления и создайте новую модель для каждого представления

Простая причина: чтобы убедиться, что ваша модель отделена от вашего представления. Если вам нужно провести рефакторинг, вы сломаете только одну часть. Итак, если у вас есть представление под названием «Последние новости», у вас должна быть модель «LatestNewsViewModel». Затем задача контроллера - получить данные из реальной модели / базы данных и создать модель представления, которую она передала в ваши представления. Кроме того, если вы решите, что вам нужны дополнительные материалы в вашем представлении, вам не нужно реорганизовывать весь уровень доступа к данным, поскольку вам нужно только изменить ViewModel и действие контроллера, которое его заполняет.

Производительность

Я рекомендую посмотреть это слайд-шоу о проблемах производительности и оптимизации, которые могут иметь огромное влияние.

7
ответ дан 4 December 2019 в 01:03
поделиться

Самыми важными для меня были понимание привязки моделей и то, что вы можете иметь типизированные представления.

Также надлежащая защита ваших маршрутов.

0
ответ дан 4 December 2019 в 01:03
поделиться

Вы можете загрузить бесплатную электронную книгу из блога Скотта Гатри, где вы найдете подробное руководство по созданию сайта ASP.NET MVC с нуля.

2
ответ дан 4 December 2019 в 01:03
поделиться
Другие вопросы по тегам:

Похожие вопросы: