Сначала позвольте мне объяснить, что я нахожусь на размещенном решении, и я мало что могу сделать в способах настройки и настройки IIS 6.
У меня MVC2 работает до определенной степени, я использую следующий код Global.asax:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default",
"{controller}.aspx/{action}/{id}",
new { action = "Index", id = "" }
);
routes.MapRoute(
"Root",
"",
new { controller = "Default", action = "Index", id = "" }
);
}
На первом маршруте я должен был указать {controller} .aspx, потому что IIS 6 не может выполнять код не aspx (или что-то в этом роде, не совсем уверен).
Что хорошо, работает следующее:
hxxp: //mysite.com/home.aspx, hxxp: //mysite.com/projects.aspx, hxxp: //mysite.com/contact.aspx
все контроллеры, и я могу выполнять их уважаемые действия.
Проблема в том, что я не могу правильно создать пустой URL-адрес (т. Е. Hxxp: //mysite.com/), из-за этого возникает ошибка «Запрещено перечисление каталогов».
Вопрос, который у меня возникает, с файлом default.aspx, расположенным в корневом каталоге (который выполняется), могу ли я загрузить контроллер Home БЕЗ, используя простой Response.Redirect?
Спасибо,
Мэтью