Я работаю с ASP.NET MVC-сайтом, который будет использовать CMS-контроллер для всех страниц сайта, кроме главной страницы. Вот идея:Как настроить маршрут для главной страницы сайта ASP.NET MVC?
Главная Контроллер:
- www.site.com
- www.site.com/default.aspx
CMS Контроллер:
- www.site.com/about
- www.site.com/agenda/schedule
- www.site.com/monkey/eats/spaghetti
- (почти все остальное)
This page перечислены некоторые варианты о том, как настроить маршрутизации страницы по умолчанию:
- Оставить Default.aspx Unrouted и unredirected в качестве точки входа в приложении - с статическими ссылками, которые принимают пользователь в часть MVC части приложения (или другого статического контента).
- Перенаправить Default.aspx в код позади, используя код обработчика событий Page_Load или использовать Response.Redirect («~/home»), чтобы отправить их на главный контроллер (хотя это перенаправление туда и обратно).
- Переименовать или удалить Default.aspx. Несмотря на предупреждение в разметке, в котором указано, что default.aspx требуется для обеспечения того, что ASP.NET MVC активируется IIS, когда пользователь делает запрос «/» ... он фактически не нужен ни на VS dev-сервере, ни на IIS7 , Запрос по умолчанию останется корневым запросом приложения «/» и будет пойман по маршруту по умолчанию и отправлен на домашний контроллер.
Я предполагаю, что другой вариант состоит в том, чтобы просто использовать один контроллер с некоторой логикой, которая обнаруживает случай с домашней страницей, но это похоже на борьбу с концепцией.
Как вы рекомендуете настраивать определенный маршрут для домашней страницы сайта?