gpt4 book ai didi

c# - ASP.NET Web API 属性路由 : RoutePrefix with Route Parameter

转载 作者:行者123 更新时间:2023-11-30 21:56:26 26 4
gpt4 key购买 nike

在 ASP.NET 中是否可以在包含路由参数的 ApiController 上使用 RoutePrefix 属性?

[RoutePrefix("api/parent/{pid}/child")]
public class ChildController : ApiController
{
[Route("")]
public HttpResponseMessage Get(object pid)
{
//...
}

[Route("{cid}"]
public HttpResponseMessage Get(object pid, object cid)
{
//...
}
}

我想让所有 Controller 方法都可以访问 pid 参数。

最佳答案

您不能使用 object 作为参数类型,因为 Web API 不知道如何将字符串转换为对象。您必须使用简单类型,例如 intstringGuid 等。如果要使用复杂类型,则必须使用 FromUri 属性或为其编写自定义转换器。

有关 http://www.asp.net/web-api/overview/formats-and-model-binding/parameter-binding-in-aspnet-web-api 的更多信息

关于c# - ASP.NET Web API 属性路由 : RoutePrefix with Route Parameter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31520927/

26 4 0