Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 向web api发送json对象数组,如何格式化url?_C#_Asp.net_Json_Asp.net Web Api - Fatal编程技术网

C# 向web api发送json对象数组,如何格式化url?

C# 向web api发送json对象数组,如何格式化url?,c#,asp.net,json,asp.net-web-api,C#,Asp.net,Json,Asp.net Web Api,我使用以下api-s编写了asp.net web api项目: 控制器方法:Uri: GetAllItems:/api/项目(工程) GetItem(内部id)/api/items/id(工程) 及 GetListoItem(IEnumerable items)/api/items/List of items(不工作) 函数与此类似(不关心逻辑) 但不是 http://localhost:50336/api/items/[{"Owner":"MySelf","Name":"C","Price":

我使用以下api-s编写了asp.net web api项目:

控制器方法:Uri:

GetAllItems:/api/项目(工程)

GetItem(内部id)/api/items/id(工程) 及

GetListoItem(IEnumerable items)/api/items/List of items(不工作)

函数与此类似(不关心逻辑)

但不是

http://localhost:50336/api/items/[{"Owner":"MySelf","Name":"C","Price":151},{"Owner":"Another","Name":"C++","Price":151}]

如果我有一个json格式的项目列表,我应该如何格式化最后一个请求以使其工作?

您想用
HttpPostAttribute
FromBodyAttribute
来修饰您的方法:

[HttpPost]
public IHttpActionResult GetByArray([FromBody]IEnumerable<Book> bks)
{
}
[HttpPost]
公共IHttpActionResult GetByArray([FromBody]IEnumerable bks)
{
}
然后将json作为post正文发送


你的邮递员应该是这样的:

专门针对

GetListOfItem(IEnumerable<Items> items) 
并将请求发送为:

/GetListOfItem?itemIds=1&itemIds=2&itemIds=3 

在请求体中传递JSON,而不是URL。。你能举例说明吗?我对网络世界很陌生,所以在这种情况下,举例说明是我理解的最好方式:)你能举例说明我应该如何做吗。我想知道的是,既然下面的一个不起作用,url命令应该如何编写?我的方法现在已经根据[HttpPost]公共IHttpActionResult GetByArray([FromBody]IEnumerable bks)签名,并且从postman发送的命令是{“Owner”:“Owner”:“Name”:“C”,“Price”:151},{“Owner”:“Another”,“Name”:“C++”,“Price”:“151}]根据我从邮递员日志中得到的回答,url命令无效欢迎。请随意接受答案(点击左边的灰色钩子)@user1520812在+1之前从未遇到过
FromUri
GetListOfItem(IEnumerable<Items> items) 
GetListOfItem([FromUri] int[] itemIds)
/GetListOfItem?itemIds=1&itemIds=2&itemIds=3