gpt4 book ai didi

c# - MVC5/WEB API 2 将 Home ApiController 路由到/api/home 而不是/home api

转载 作者:行者123 更新时间:2023-11-30 20:31:55 24 4
gpt4 key购买 nike

我有一个现有的 webapi 2 应用程序需要添加基本的前端。现有的 webapi Controller 已在名为 xController yController 的 Controllers 目录根目录中创建。

Controllers
-XController.cs
-YController.cs

按照以下路线

 config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{action}"
);

这些 Controller 中的每一个都需要一个伴随的 MVC Controller 。我想做的是将 API Controller 重命名为 XApiController YApiController 并使用路由来确保服务的现有用法中断。然后我可以为前端添加标准 MVC Controller 。

Controllers
-XApiController (previously XContoller)
-XController
-YApiController (previously YController)
-YController

最佳答案

你不能只使用 RoutePrefix 属性来做到这一点吗?然后你可以随心所欲地调用你的 Controller ,只需让属性决定它应该托管在哪里,在 Controller 级别控制你的路由有利有弊,但这似乎是一个常见的用例,例如:

[RoutePrefix("api/home")]
public class SomeHomeController: ApiController
{
// ...
}

关于c# - MVC5/WEB API 2 将 Home ApiController 路由到/api/home 而不是/home api,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42363488/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com