У меня возникли проблемы с настройкой двух областей в моем проекте. Я создал обе области, щелкнув правой кнопкой мыши свой проект -> Добавить -> Область с помощью VS 2010 Professional,
Код, сгенерированный в файлах * AreaRegistration.cs, в точности соответствует моим ожиданиям.
Обе мои области имеют несколько контроллеров.
Я проверил свой файл global.asax.cs, и он содержит то, что я ожидал, внизу есть следующее:
* * 1010
// Generated code
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
Когда я изменяю сгенерированную по умолчанию информацию о маршрутизации, я могу заставить ее работать для Single controller:
context.MapRoute(
"CommunityCourses_default",
"CommunityCourses/{controller}/{action}/{id}",
new {controller="NameOfController", action = "Index", id = UrlParameter.Optional }
);
controller = "NameOfController" - это то, что я пытался добавить к сгенерированному коду, но он работает только для одного контроллера.
Редактировать: Я переименовал пространство имен моих файлов, чтобы использовать PROJECTNAME.AREANAME в области, это вызывает проблемы? Я думал, что это упростит мой импорт без нарушения соглашения.
Чего мне не хватает? Я заметил много проблем, связанных с областями на SO, и безуспешно пытался следить за ответами. Эта проблема беспокоила меня в течение большей части дня, любая помощь будет принята с благодарностью!