【发布时间】:2017-04-29 03:32:57
【问题描述】:
有一个关于 Web Api 2.0 版本控制的快速问题。
我已经开发了一个完全 RESTful API,但是我有 2 个同名的控制器。
我根据不同的文件夹将它们放在不同的命名空间中。 (例如 v1 和 v2 文件夹)。
我还使用普通的 NamespaceHttpControllerSelector 配置了正确的路由。 所以到目前为止一切正常。
但是我有一个问题......是否有可能仍然有版本控制电子邮件控制器即使我将电子邮件控制器放在根级别?
例如
控制器/v1/EmailControllers
控制器/电子邮件控制器
这还有可能吗?
编辑:
我忘了提到我没有使用RoutePrefix 属性,因为我一直在我的RouteConstraint 上收到错误。
我用以下内容修饰了我的操作方法(这似乎有点多余,因为它们本质上具有相同的命名空间):
[Route("api/{apiVersion1:ApiVersion1Constraint(v1)}/emails/LogEmails", Name = "LogEmailsRoute_1")]
【问题讨论】:
标签: c# asp.net-mvc