我有以下WebApi方法签名
public HttpResponseMessage GetGroups(MyRequest myRequest)
在客户端中,如何将MyRequest传递给调用方法?
目前,我有这样的东西
var request = new MyRequest()
{
RequestId = Guid.NewGuid().ToString()
};
var response = client.GetAsync("api/groups").Result;
如何将request
传递给GetAsync
?
如果是POST
方法,我可以这样做
var response = client.PostAsJsonAsync("api/groups", request).Result;
1条答案
按热度按时间ojsjcaue1#
您不能为HTTP GET请求发送消息正文,因此,您不能使用
HttpClient
执行相同的操作。但是,您可以使用请求消息中的URI路径和查询字符串来传递数据。例如,您可以有一个类似api/groups/12345?firstname=bill&lastname=Lloyd
的URI和如下所示的参数类MyRequest
。因为
MyRequest
是一个复杂类型,所以必须像这样指定模型绑定。现在,
MyRequest
参数将包含来自URI路径和查询字符串的值。在本例中,Id
将为12345,FirstName
将为bill,LastName
将为Lloyd。