У меня есть приложение на 100% javascript внутри моего проекта ASP.NET WebAPI
. Это приложение использует все данные из моих методов API.Вызов контроллеров в разных папках в ASP.NET WebAPI
Теперь мне было предложено создать простой портал, созданный в Razor и HTML, также в моем проекте WebAPI (так, как проект MVC).
Таким образом, я создал папку под «Контроллеры» папку с именем «Портал», где Im размещая все мои портальные эксклюзивные контроллеры.
Вот контроллеры структуры папок:
Это моя Razor структура просмотров веб-приложение:
Так что, когда я запустить приложение я могу видеть страницу Входа (под «Учетная запись»). Когда я нажимаю мою кнопку Вход, я называю мой CommonController
(Portal) для отображения меню слева, но я получаю сообщение об ошибке:
Я предполагаю, потому что у меня есть 2 CommonControllers
, но 1 для обслуживания моего JavaScript Application а другой для моего приложения Portal.
Строка в моем Index.cshtml, что вызывает общие контроллеры является:
<div class="page-header page-header-blue">
@Html.Action("Header", "Common")
<h1><i class="icon-bar-chart"></i> Dashboard</h1>
</div>
В моей WebApiConfig.cs
У меня есть следующий веб-Api Маршрут:
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}"
);
So I don't know how to tell it that I want to call
CommonController
that is under "Portal" folder.
Любой ключ или совет о том, как это сделать и о лучшей практике?
UPDATE:
У меня есть создать другой маршрут для моего портала контроллеров:
config.Routes.MapHttpRoute(
name: "DefaultMvc",
routeTemplate: "portal/{controller}/{action}"
);
Похоже на работу, но в моем index.cshtml называет: @Html.Action("Header", "Common")
, как я могу сказать действие вызвать Portal Common
а не только Common
?
возможно дубликат [маршрута API Web игнорируется и обрабатывается MVC] (http://stackoverflow.com/questions/25184349/web-api-route-is-ignored-and-processing-by-mvc) –
Прочтите решение возможного дубликата, но я не понимаю. – VAAA
Я думал лучше создать другой веб-проект только для приложения портала. – VAAA