Я только начал использовать VS 2012 RC, и я создаю веб-приложение ASP.NET MVC 4, в котором я планирую предоставить как пользовательский интерфейс на основе HTML, так и интерфейс программирования на основе WebApi.
Для моего веб-сайта HTML у меня есть контроллер и просмотр для каждой из моих моделей (MVC!), а маршрутизация работает "по соглашению", так что, например, URL /client
подключается к моему ClientController
, Мой ClientController
происходит от Controller
.
Для моего API я создам новые контроллеры, которые выводятся из ApiController
. Я, естественно, хочу, чтобы мои URL-адреса API были похожи на мои URL-адреса HTML, поэтому я хотел бы, чтобы информация о клиенте была доступна в /api/client
. Тем не менее, с помощью маршрутизации по соглашению, это предполагает, что мне нужен ApiController с именем ClientController
. И у меня уже есть класс ClientController
.
Как я могу справиться с этим? Нужна ли мне обычная маршрутизация? Я помещал классы API в другое пространство имен, чтобы я мог дать им одно и то же имя?
Обновление: Этот вопрос, похоже, говорит о том, что мне нужно другое пространство имен для моих контроллеров API: Смешать веб-api-контроллеры и контроллеры сайтов