Asp.net web api WebApi地图路由器

Asp.net web api WebApi地图路由器,asp.net-web-api,routes,Asp.net Web Api,Routes,我在我们的项目中使用WebApi。我们在不同的子文件夹下定义了相同的控制器名称。比如: Controllers |----Admin | |----MyProjectsController.cs | |----User |----MyProjectsController.cs 我们如何为这样的场景定义路由配置 /api/admin/MyProjects /api/user/MyProjects 谢谢。路由模板不直接支持这一点,因为

我在我们的项目中使用WebApi。我们在不同的子文件夹下定义了相同的控制器名称。比如:

Controllers
    |----Admin
    |      |----MyProjectsController.cs
    |
    |----User
          |----MyProjectsController.cs
我们如何为这样的场景定义路由配置

/api/admin/MyProjects
/api/user/MyProjects

谢谢。

路由模板不直接支持这一点,因为在使用Web API控制器时不考虑命名空间。您需要使用Web API路由属性。您必须手动指定它们(它们现在与包含控制器的文件夹或命名空间无关)

特别是你应该看看。例如:

[RoutePrefix("Admin")]
public class MyProjectController: ApiController