如何在ASP中拥有可选的请求模型属性.. NET Web API 2
本文关键字:属性 模型 请求 NET Web API ASP 拥有 | 更新日期: 2023-09-27 18:04:49
我正在写一个ASP。. NET Web API 2项目。我已经创建了一个请求模型,其中包含将作为API输入的属性。对于GET请求,我枚举方法参数列表中的属性,对于POST请求,我将request对象作为唯一参数。
我如何在我的请求对象中指定可选属性?我想将"Count"指定为请求模型的可选参数。这能奏效吗?
对于POST方法:
class Request{
public int id {get;set;}
public int? Count{get;set;}
}
对于GET方法:
public Response MyActionMethod(int id, int? Count)
在发布问题之前,你没有自己尝试过吗?
是的,这就够了。更合适的例子:
[HttpPost]
virtual object Foo([FromBody] Request req);
// query parameters (as object)
[HttpGet]
virtual object Foo([FromUri] Request req);
// query parameters (as arguments)
[HttpGet]
virtual object Foo(int id, int? count = null);
//uri + query parameters
[HttpGet]
[Route('/path/:id')]
virtual object Foo(int id, int? count = null);
可以用int
代替int?
,然后0
是对象Request
的默认值,对于方法参数,您应该自己设置默认值int count = 0
。