Главная страница   /   9.8. Резюме (ASP.NET MVC 4 в действии

ASP.NET MVC 4 в действии

ASP.NET MVC 4 в действии

Джеффри Палермо

9.8. Резюме

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

Проектирование схемы URL для приложения – это самый сложный этап, рассмотренный в этой главе, ведь нет окончательного ответа на вопрос, какие роуты лучше всего создать. Код, необходимый для создания роутов и URL из роутов, - простой, процесс разработки схемы - нет. В конечном счете в каждом приложении руководящие принципы будут реализованы по-разному. Одним будет достаточно роутов по умолчанию, созданных шаблоном проекта, в то время как в других будут реализованы сложные пользовательские определения роутов, охватывающие несколько классов C#.

Мы узнали, что последовательность, в которой роуты записаны, определяет последовательность их поиска при получении запроса, и что мы должны тщательно оценивать эффект от добавления новых роутов в приложение. Чем больше роутов определено, тем больше риск отказа существующих URL. Страховка от этой проблемы - тестирование роутов. Чтобы тестирование не было громоздким, мы можем использовать быстрый API тестирования роутов MvcContrib, а с помощью Route Debugger можно увидеть последовательное распределение правил во время выполнения.

Самое главное, что следует запомнить из этой главы, -это то, что ни одно приложение с ASP.NET MVC не должно быть ограничено в URL по техническим причинам, из-за структуры исходного кода - и это только к лучшему! Разделение схемы URL и базовой архитектуры кода предоставляет максимальную гибкость и позволяет создавать URL, которые имеют смысл для пользователя, а не те, которые требуются структурой исходного кода. Сделайте URL простыми, интуитивно понятными и короткими, и они обеспечат дополнительное удобство для пользователя при работе с вашим приложением.

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