Невозможно получить доступ к виду внутри области в MVC 3 - PullRequest
0 голосов
/ 10 декабря 2011

Я застрял в простой проблеме, и я не уверен, как ее решить.

Категория просмотра или ее мастер не найдены, или никакой механизм просмотра не поддерживает найденные местоположения.Были найдены следующие местоположения:
~ / Views / ShoppingCart / Category.aspx
~ / Views / ShoppingCart / Category.ascx
~ / Views / Shared / Category.aspx
~ / Views / Shared/Category.ascx
~ / Views / ShoppingCart / Category.cshtml
~ / Views / ShoppingCart / Category.vbhtml
~ / Views / Shared / Category.cshtml
~ / Views / Shared / Category.vbhtml

У меня есть область под названием ShoppingCartArea, и у меня есть представление (Category.cshtml) и контроллер внутри него.Но я не уверен, как он ссылается на папку основного вида.

Global.asax

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

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

  }

  protected void Application_Start()                          
  {
      AreaRegistration.RegisterAllAreas();
      RegisterGlobalFilters(GlobalFilters.Filters);
      RegisterRoutes(RouteTable.Routes);
  }

и мою область registration.cs

public override void RegisterArea(AreaRegistrationContext context)
{
     context.MapRoute(
         "ShoppingCartArea_default",
         "ShoppingCartArea/{controller}/{action}/{id}",
         new { controller = "ShoppingCart", action = "Category", id = UrlParameter.Optional },
                new[] { ShoppingCartAppMVC.Areas.ShoppingCartArea.Controllers}
     );
}

Позвольте мне знать, еслия делаю что-то не так

1 Ответ

1 голос
/ 18 ноября 2013

Возможно, вы столкнулись с этим, потому что вы добавили свои области вручную. Недавно я перестраивал старые приложения WebForms и постепенно преобразовывал их в MVC. Я не добавил тип MVC в проект, просто добавил нужные папки и т. Д. К сожалению, я столкнулся с той же проблемой, что и вы.

Ответ состоял в том, чтобы добавить правильный тип проекта ( см. Этот ответ ) и добавить области из контекстное меню проекта. После этого я переместил все в недавно созданную область - и это сработало.

Таким образом, ответ таков: MVC не только создает все папки, но и обновляет их маршруты.

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