Проблемы с маршрутизацией к областям в ASP NET MVC после публикации проекта - PullRequest
0 голосов
/ 09 июля 2019

Я создал проект в ASP.NET MVC с двумя областями, и его структура показана на рисунке:

enter image description here

Когда я запускаюэто, это берет один из двух маршрутов в зависимости от IP-адреса пользователя.сам код выглядит следующим образом:

if (myRole.Count == 0){
    return View ("~/Views/Shared/UserNotFound.cshtml");
 }if ((String.Equals(myRole[0], "Менеджер")) || ((myRole.Count > 1))){
     return RedirectPermanent("/Manager/ManagerHome/Index");
 }else{
     return RedirectPermanent("/Practitioner/PractitionerHome/Index");
 }

Но когда я публикую проект, его структура совершенно другая:

enter image description here

ОпределенноВ областях нет папок типа «Контроллеры», «Файлы» и «Модели» (например, область диспетчера, представленная на этом рисунке).Поэтому, когда я запускаю проект в веб-браузере, я получаю ошибку 404.Что может вызвать проблему?Должен ли я изменить пути или проект не был опубликован правильно?

PS: Интересно, может ли это стать причиной проблемы: этот проект был повторно опубликован - я опубликовал его в первый раз, удалил и снова опубликовал вМИБ.Это мой первый опыт работы с опубликованными приложениями ASP.NET MVC, поэтому я не имею ни малейшего понятия о причинах такого поведения.

Благодаря вопросу о шкипере я предоставляю некоторую дополнительную информацию: проектимеет несколько папок, среди которых «Области».Но когда я запускаю его на локальном хосте (имя проекта Aspid и он находится внутри intepub \ wwwroot \ Aspid) с localhost / Aspid, он переходит в localhost / Manager / ManageHome - путь, который я написал в одном из контроллеров.Но в структуре проекта отсутствует папка Manage / ManagerHome.Что нужно сделать, чтобы успешно запустить его после публикации?

1 Ответ

0 голосов
/ 09 июля 2019

Вы щелкнули правой кнопкой мыши Области и добавили новую папку вместо области? Вам не хватает файла [AreaName] AreaRegistration.cs, который сообщает RouteConfig, что это область.

Убедитесь, что вы щелкнули правой кнопкой мыши проект или папку Области> Добавить> Область.

...