我希望有一个仅适用于特定环境的Web-api控制器,例如开发。
这有可能吗?如果可以的话,我该怎么办?
答案 0 :(得分:2)
您可以使用#if debug
语句包装控制器:
#if DEBUG
<your controller code>
#endif
这样,您将只能在调试版本中访问控制器。
答案 1 :(得分:-1)
我不明白您为什么要使用仅开发者控制器,但类似于@shoter,我也会使用#if而是包装路由。
#if DEBUG
routes.MapHttpRoute(
name: "API Default",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
#endif
这样,就不会在生产版本中创建路线。