gpt4 book ai didi

c#-4.0 - 如何处理 ASP.NET Web API 中的分层路由?

转载 作者:行者123 更新时间:2023-12-02 15:59:18 25 4
gpt4 key购买 nike

目前我有两个 Controller

1 - 父 Controller

2 - 子 Controller

我像这样访问我的父 Controller

someurl\parentcontroller

现在我想像这样访问我的子 Controller

someurl\parentcontroller\1\childcontroller

最后一个 url 应返回特定父级的所有子级。

我的 global.asax 文件中目前有这条路线

routes.MapHttpRoute("Route1", "{controller}/{id}", new { id = RouteParameter.Optional });

我不确定如何实现我的 parent\id\child 层次结构。我应该如何配置我的路由来实现这一点?有想法吗?

最佳答案

如下配置路由。 {param} 是可选的(如果需要则使用):

routes.MapHttpRoute(
name: "childapi",
routeTemplate: "api/Parent/{id}/Child/{param}",
defaults: new { controller = "Child", param = RouteParameter.Optional }
);

routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);

然后将子 APi 称为/api/Parent/1/child父级可以简单地称为/api/Parent/

子 Controller :

    public class ChildController : ApiController
{
public string Get(int id)
{
//the id is id between parent/{id}/child
return "value";
}
.......
}

关于c#-4.0 - 如何处理 ASP.NET Web API 中的分层路由?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10783946/

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