gpt4 book ai didi

c# - WebApi 属性路由 - 将路由参数绑定(bind)到 GET 对象

转载 作者:可可西里 更新时间:2023-11-01 08:43:28 27 4
gpt4 key购买 nike

目前,对于每个 GET,我都必须根据路由参数手动创建一个查询对象。

是否可以直接绑定(bind)到查询对象?

所以,而不是:

[Route("{id:int}")]
public Book Get(int id) {

var query = new GetBookByIdQuery {
Id = id
};

// execute query and return result
}

我可以这样做:

[Route("{id:int}")]
public Book Get(GetBookByIdQuery query) {
// execute query and return result
}

GetBookByIdQuery 看起来像:

public class GetBookByIdQuery {
public int Id { get; set;}
}

最佳答案

要从 URI 中读取复杂类型,可以使用 [FromUri]

    [Route("{id:int}")]
public Book Get([FromUri] GetBookByIdQuery query) {

// execute query and return result
}

如果您请求 api/values/2 那么查询对象的 id 属性将为 2;

关于c# - WebApi 属性路由 - 将路由参数绑定(bind)到 GET 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31633448/

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