ASP.Net MVC2 Маршрутизация необязательный параметр дает 404 - PullRequest
0 голосов
/ 23 февраля 2011

У нас есть сопоставления MVC2 ...

routes.MapRoute(
  "HomeKeepAlive",
  "{controller}/KeepAlive/{objectType}/{id}",
  new { controller = "Home", action="KeepAlive", objectType = UrlParameter.Optional, id = UrlParameter.Optional }
);

routes.MapRoute(
  "DefaultRoute",
  "{controller}/{action}/{id}",
  new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

Все серверы - Windows Server 2003 sp2, IIS6 с установленным .Net 4.

На нашем тестовом сервере работает маршрутизация

/Home/Ping

/Home/Ping/1

/Home/KeepAlive/Article

/Home/KeepAlive/Article/5

Но на нашем живом сервере работают только URL-адреса без идентификатора, например

/Home/Ping
/Home/KeepAlive/Article

в то время как те, у кого есть идентификатор, дают 404

/Home/Ping/1
/Home/KeepAlive/Article/5

Учитывая, что тестовый сервер работает, я предполагаю, что проблема связана с конфигурацией IIS6 на нашем работающем сервере, но я не вижу различий между ними.

Кто-нибудь видел что-нибудь подобное раньше?

Ответы [ 2 ]

0 голосов
/ 23 февраля 2011
0 голосов
/ 23 февраля 2011

Проверьте в этом посте об ошибке в ASP.net, недавно появившейся, которая может вызвать вашу проблему.

...