我想将所有api调用路由到一个控制器。我使用MVC,我想做的是拥有动态端点,所以基本上你使用的url将指向一个执行逻辑的控制器。让它变得更棘手的是我想知道正在调用哪个控制器,例如,如果有一个Get at:" https:// {url} / project / id"我希望它指向我的动态"控制器并有"项目"作为参数(或可以告诉我使用了什么端点的东西),所以我知道调用哪个控制器。
我知道这不是设置API的好方法,但目前这似乎最符合我们的需求。
[编辑] 我看到ive搞砸了我的问题,因为我混淆了MVC控制器和ApiController。我最终在这个帖子中使用了答案:Route all Web API requests to one controller method
答案 0 :(得分:0)
在Asp.Net MVC中,您可以将路由到例如
之类的自定义错误页面routes.MapRoute("NotFound",
"{*url}",
new { controller = "Error", action = "PageNotFound" });
所以稍微重命名就好像是
routes.MapRoute("AllRequests",
"{*url}",
new { controller = "Dynamic", action = "Dynamic" });
这就是你想要的吗?