Я пытаюсь опустить «/ Index» из действий индекса в своем приложении. Я знаю, что есть миллион похожих сообщений, но мой кажется немного другим.Маршруты MVC - скрыть индекс
В принципе, я хочу установить мой «домашний» контроллер/действие на Time/Dashboard, но по-прежнему имеет значение «Index» для каждого другого контроллера.
Когда мой маршрут по умолчанию был «Главная» «Индекс». Остальные страницы были в порядке. «Индекс» скроется. Но потом я сменил его на «Dashboard». Итак, теперь, когда я перехожу к любому контроллеру/индексу. Он нуждается в «/ Index», иначе я получаю 404. Прямо сейчас это мои маршруты:
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Time", action = "Dashboard", id = UrlParameter.Optional }
);
Вам нужно изменить имя метода действия с 'index' на' dashboard' .. – mmushtaq
Право. Я думаю, если бы все «Индексы» стали «Dashboard», пользователь никогда не узнает. Кажется, это немного дрябло. Но я понимаю, о чем вы. Почему я должен называть Dashboard как «Dashboard»? Я должен был бы назвать это «Индексом», потому что они никогда этого не увидели. Проблема в том, что пользователи, не прошедшие проверку подлинности, могут перейти на http/myapplication и посмотреть MyController/Index. И я не аутентифицировал пользователей, чтобы перейти на http/myapplication и посмотреть Time/Dashboard. Думаю, я могу просто решить это с помощью перенаправления –