Я создал проект в ASP.NET MVC с двумя областями, и его структура показана на рисунке:
Когда я запускаюэто, это берет один из двух маршрутов в зависимости от 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");
}
Но когда я публикую проект, его структура совершенно другая:
ОпределенноВ областях нет папок типа «Контроллеры», «Файлы» и «Модели» (например, область диспетчера, представленная на этом рисунке).Поэтому, когда я запускаю проект в веб-браузере, я получаю ошибку 404.Что может вызвать проблему?Должен ли я изменить пути или проект не был опубликован правильно?
PS: Интересно, может ли это стать причиной проблемы: этот проект был повторно опубликован - я опубликовал его в первый раз, удалил и снова опубликовал вМИБ.Это мой первый опыт работы с опубликованными приложениями ASP.NET MVC, поэтому я не имею ни малейшего понятия о причинах такого поведения.
Благодаря вопросу о шкипере я предоставляю некоторую дополнительную информацию: проектимеет несколько папок, среди которых «Области».Но когда я запускаю его на локальном хосте (имя проекта Aspid и он находится внутри intepub \ wwwroot \ Aspid) с localhost / Aspid, он переходит в localhost / Manager / ManageHome - путь, который я написал в одном из контроллеров.Но в структуре проекта отсутствует папка Manage / ManagerHome.Что нужно сделать, чтобы успешно запустить его после публикации?