Asp.Net Mvc RouteData заполнен с неправильными параметрами - PullRequest
1 голос
/ 15 июня 2009
routes .Add ("Detail",
                new Route ("{maincategory}/{category}",
                          new RouteValueDictionary (new { controller = "Category", action = "Detail"}),
                          new RouteValueDictionary (new { category = new FromValuesListConstraint ("")}),
                          new MyRouteHandler ()));

        routes.Add("Category",
                new Route("{category}",
                          new RouteValueDictionary(new { controller = "Category", action = "Index", category = "" }),
                          new RouteValueDictionary(new { category = new FromValuesListConstraint("") }),
                          new MyRouteHandler()));

        routes.MapRoute(
            "Default",                                              // Route name
            "{controller}/{action}/{id}",                           // URL with parameters
            new { controller = "Home", action = "Index", id = "" }  // Parameter defaults

        );

Мои маршруты такие. Но когда я запускаю веб-сайт, отображается домашняя страница. После отображения домашней страницы что-то происходит, и снова выполняется новый новый квест (я не знаю, почему). Я перезаписываю MvcRouteHandler и помещаю в него точку останова.

public class MyRouteHandler : MvcRouteHandler
{
    protected override IHttpHandler GetHttpHandler(RequestContext requestContext)
    {
        var url = HttpContext.Current.Request.RawUrl;
        var route = requestContext.RouteData;  
        return new MvcHandler(requestContext);
    }
}

Переменная URL-адреса - /Content/Divider.gif. Из-за этого после отображения главной страницы приложение выдает ошибку. Я попробовал все, чтобы понять проблему как начинающий пользователь MVC. Но я ничего не мог найти.

Спасибо!

1 Ответ

1 голос
/ 15 июня 2009

Существует ли файл /Content/Divider.gif на вашем сайте?

Вероятно, он пытается выполнить его как маршрут, потому что файл не существует, и это является источником вашей проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...