Не удалось найти представление «Индекс» или его владельца. - PullRequest
1 голос
/ 25 февраля 2011

Сегодня я начал реструктуризацию своего проекта MVC, используя области.Так что у меня есть некоторые проблемы с этим.Я создаю области, перемещаю представления и главные страницы, делаю маршрутизацию, но когда я пытаюсь просмотреть любую страницу области, я получаю «Не удалось найти представление« Логин »или его мастер».

Есть предложения?Некоторое время я гуглил, но не нашел решения.

Моя маршрутизация global.asax:

routes.MapRoute("Areaname", "Areaname",
                            "Areaname/{controller}/{action}/{id}",
                            new { controller = "controllerName", action = "Home", id = UrlParameter.Optional },
                            new string[] { "path.to.area.controllers.Controllers" });

Маршрутизация регистрации области:

public override void RegisterArea(AreaRegistrationContext context)
        {
            context.MapRoute(
                "Areaname_default",
                "Areaname/{controller}/{action}/{id}",
                new { action = "Home", id = UrlParameter.Optional },
                new string[] { "path.to.area.controllers.Controllers" }
            );
        }

Это кажется правильным, но представления по-прежнему недоступны.

Заранее спасибо.

1 Ответ

0 голосов
/ 24 ноября 2011

При использовании областей убедитесь, что вы переписали свои ссылки действий следующим образом:

 Html.ActionLink("Invoicing link", "Index", "CustomerInvoices", new { area = "Invoicing" }, null)

В этом примере вы ссылаетесь на действие «Индекс» внутри контроллера «CustomerInvoices», внутри «Выставление счетов»Area.

Убедитесь, что вы делаете правильные изменения для ссылки на действие Login в вашем Area!

...