【发布时间】:2020-03-11 06:46:04
【问题描述】:
我正在使用 WebApi 1 (Visual Studio: 2010)
客户端可以向方法发送可变(动态)数量的参数的情况很少见。 (通过POST动词)
我一直在尝试通过发送可变数量的参数来测试它:
POST http://.../api/Claims HTTP/1.1
Host: ...
Accept: */*
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
Content-Length: 13
a=1&b=2&c=4
在服务器端:
[HttpPost]
public dynamic NewClaim1([FromBody] dynamic al)
{
return Request.CreateResponse(HttpStatusCode.OK, (object)al);
}
但我得到一个空对象响应。 (200 OK)
尝试 #2
我也试过([FromBody] object al)
尝试 #3
我也试过(object[] al)
尝试 #4
public class A //using a class holder
{
public object[] obj { get; set; }
}
[HttpPost]
public dynamic NewClaim1([FromBody] A al)
{
return Request.CreateResponse(HttpStatusCode.OK, al);
}
但是没有成功
问题:
如何将动态发布参数发送到可以检索这些值的方法。
注意:
- 我不想为每个组合创建类持有者...
- 我不想发送 JSON。我说的是纯
postx-www-form-urlencoded - 我已经知道 webapi 不支持带有多个
[FromBody]参数的 nativly
【问题讨论】:
标签: c# asp.net post asp.net-web-api