Randeep Chauhan Ответов: 3

Удалить имя контроллера из url-адреса


Всем Привет,

Я работаю над приложением MVC4.Мой текущий url-адрес:

http://localhost:3251/product/sports/abc[^]


продукт - это мое имя контроллера
спорт - это категория
abc - это мой товар в категории "Спорт"

но я хочу вот так

http://localhost:3251/sports/abc[^]


как ее решить.Заранее спасибо

Что я уже пробовал:

я попытался изменить его из конфигурации маршрута

3 Ответов

Рейтинг:
1

Krunal Rohit

Я бы посоветовал вам пойти на переписывание URL-адресов:

Понимание перезаписи URL-адресов и маршрутизации атрибутов URL-адресов в ASP.NET MVC (MVC5) с примерами - Dot Net Stuff[^]
ASP.NET MVC и новый модуль перезаписи IIS7 - Скотт Хансельман[^]

Вы можете указать маршрут к вашему методу действия в качестве атрибута.


КР.


Рейтинг:
1

prit mehra

Использовать это Ссылка[^] и

You could try inverting the routes definition by placing the more specialized route first. Also, you probably didn't want to hardcode the action name as action but rather use the {action} placeholder:


public class RouteConfig
{
    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
        //routes.MapMvcAttributeRoutes();

    routes.MapRoute(
        name: "Special",
        url: "{action}",
        defaults: new { controller = "Home", action = "LandingIndex" }
    );

    routes.MapRoute(
        name: "Default",
        url: "{controller}/{action}/{id}",
        defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
    );
   }
}


Рейтинг:
0

Passion4Code

Привет

Пожалуйста, следуйте приведенным ниже ссылкам, а также:
Настройка маршрутов в ASP.NET MVC[^]

ASP.NET общие сведения о маршрутизации в MVC (c#) проекта | сайта ASP.NET [^]

Спасибо