asp.net - 对于同一件事,我可以同时拥有 Controller 和 ApiController 吗?

标签 asp.net .net asp.net-mvc wcf-web-api

我刚刚开始使用 VS 2012 RC,我正在创建一个 ASP.NET MVC 4 Web 应用程序,我计划在其中提供基于 HTML 的用户界面和基于 WebApi 的编程界面。

对于我的 HTML 网站,我的每个模型(MVC!)都有一个 Controller 和 View ,并且路由“按约定”工作,例如,URL /client连接到我的 ClientController .我的 ClientController源自 Controller .

对于我的 API,我将创建派生自 ApiController 的新 Controller 。 .我自然希望我的 API URL 与我的 HTML URL 相似,因此我希望在 /api/client 上提供客户端信息。 .但是,根据约定路由,这表明我需要一个名为 ClientController 的 ApiController .而且我已经有了 ClientController类(class)。

我该如何处理?我需要自定义路由吗?我是否将 API 类放在不同的命名空间中,以便可以给它们相同的名称?

更新:这个问题似乎表明我只需要为我的 API Controller 使用不同的命名空间:Mix web api controllers and site controllers

最佳答案

它所需要的只是 Controller 类位于不同的命名空间中,一切都很好。

使用 MVC 区域也可以(正如 gordonml 的评论中所建议的那样),但这有效地将 Controller 放在不同的命名空间中,因此这是实现相同结果的更正式的方式。

关于asp.net - 对于同一件事,我可以同时拥有 Controller 和 ApiController 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11564922/

相关文章:

asp.net - Orchard : Restricted access pages

ajax - 双重登录MVC和WebAPI

c# - ASP.NET MVC Cookie 实现

asp.net - Hangfire.io 仪表板映射到 IIS 虚拟目录

javascript - 使用javascript填充第二页的文本框

mysql - 具有 TLS 1.2 和 ASP.NET 应用程序的 Amazon RDS Mysql 数据库

c# - 抑制关于 :blank in Print Output of WinForms WebBrowser

.net - 非贪婪的正则表达式量词给出贪婪的结果

c# - 同步 Web Api 和响应时间取决于线程和请求计数

asp.net-mvc - 如何在 ASP.NET MVC 中使用带有 PostBack 的服务器控件?