Хорошо, мне нужно выйти, поэтому я отправлю это сейчас, так как не знаю, как долго я буду.
Я установил проект MVC 3 по умолчанию и изменил маршрутизацию в соответствии с вашим случаем.
Global.asax:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"TrackingChannels",
"Dis/TrackingChannels/{action}",
new { controller = "TrackingChannels", action = "Index" }
);
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
Добавлен TrackingChannelsController
:
public class TrackingChannelsController : Controller
{
public ActionResult Index()
{
return View();
}
public ActionResult Test()
{
return View();
}
}
Я намеренно добавил Test
действие, чтобы увидеть, если /dis/trackingchannels/{action}
также будет работать. Затем я добавил пару взглядов, которые привели в следующую структуру проекта:
Наконец, вот результаты с указанием URL-адреса в браузере:
Сначала с /dis/trackingchannels
:
Второй с /dis/trackingchannels/test
:
Единственное, что я могу сказать, не видя ваш проект, - это дважды проверить, соответствует ли URL правильному маршруту. Для этого вы можете использовать Phil Haack's RouteDebugger.
Какой URL-адрес дает ошибку? – SLaks
Настройка шаблона проекта с тем, что у вас не дает мне никаких проблем. Я могу перейти к '/ dis/trackingchannels', и индексный указатель успешно расположен. –
Единственное, о чем я могу думать, это то, что вы используете обратную косую черту вместо forwardslashes, но я не могу воспроизвести это здесь (на самом деле, все мои браузеры либо меняют обратную косую черту, либо пересылают мне диалог с ошибкой). Вы хотите, чтобы я опубликовал информацию о том, что работает для меня? –