IgnoreRoute для PHP Сайт встроен в ASP.NET MVC 3 - PullRequest
2 голосов
/ 25 апреля 2011

У меня есть сайт MVC 3 со встроенным блогом worpress.Все следующие URL-адреса направлены через MVC.

www.mysite.com
www.mysite.com/aboutus
www.mysite.com/contactus 

У меня также есть каталог верхнего уровня, который называется Блог, который является WordPress блогом php.Если я получу доступ к www.mysite.com/blog/index.php, блог появится.Но весь доступ к www.mysite.com/blog, по-видимому, маршрутизируется через MVC и приводит к ошибке, которая, по-видимому, связана с отсутствием System.Web.Helpers (я развернул его в папке bin, так что я знаю, что это не проблема).

В методе RegisterRoutes моего Global.asax.cs файла я пробовал обе эти строки в начале метода, но ни одна из них не работает.

routes.IgnoreRoute("Blog");
routes.IgnoreRoute("{folder}/{*pathinfo}", new { folder = "Blog" });

У кого-нибудь есть идея?

Я включил содержимое Global.asax.cs согласно запросу Snoopy:

public class MvcApplication : System.Web.HttpApplication
{
    public static void RegisterGlobalFilters(GlobalFilterCollection filters)
    {
        filters.Add(new HandleErrorAttribute());
    }

    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("Blog");
        routes.IgnoreRoute("{folder}/{*pathinfo}", new { folder = "Blog" });
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

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

    }

    protected void Application_Start()
    {
        AreaRegistration.RegisterAllAreas();

        RegisterGlobalFilters(GlobalFilters.Filters);
        RegisterRoutes(RouteTable.Routes);
    }
}

Ответы [ 2 ]

0 голосов
/ 04 августа 2014

Использовать Routes.IgnoreRoute("Blog/"); Также не забудьте поставить его первым в таблице маршрутизации.

Это, вероятно, о пропавших без вести / в конце

0 голосов
/ 24 января 2012

Используйте это, чтобы игнорировать маршрутизацию для папки "Блог".

 routes.IgnoreRoute("Blog/{*pathInfo}");
...