Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.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
Asp.net web api Web API参数接受有效参数之后的任何参数_Asp.net Web Api - Fatal编程技术网

Asp.net web api Web API参数接受有效参数之后的任何参数

Asp.net web api Web API参数接受有效参数之后的任何参数,asp.net-web-api,Asp.net Web Api,我有一个API,它有一个参数字符串UserId a,但是在测试它时,它会接受我定义的参数后面的任何参数 它显示了我想要的结果,我有一个参数是UserId,但是如果我这样做的话 “并根据用户ID获得相同的结果 和&xyzpqr无效 那个么,如何在我的参数的基础上进行参数绑定呢?并没有额外的(?和&)只包含UserId 我所尝试的: 我已经尝试了基于属性的路由和基于操作的路由“43141688&xyzpqr”将被整体读取,尝试使其成为”?UserId=43141688&xyzpqr=test“@jo

我有一个API,它有一个参数字符串UserId a,但是在测试它时,它会接受我定义的参数后面的任何参数

它显示了我想要的结果,我有一个参数是UserId,但是如果我这样做的话

“并根据用户ID获得相同的结果 和&xyzpqr无效

那个么,如何在我的参数的基础上进行参数绑定呢?并没有额外的(?和&)只包含UserId

我所尝试的:


我已经尝试了基于属性的路由和基于操作的路由

“43141688&xyzpqr”将被整体读取,尝试使其成为”?UserId=43141688&xyzpqr=test“@jomsk1e仍然得到相同的结果。。为什么不显示错误呢?我认为Web API只是在尽力选择一个至少与某些URI匹配的路由(在本例中,
UserId
)。我想这取决于这是否是您的实际问题。您是否尝试过使用请求正文代替查询字符串?(我知道这并不能回答问题,只是出于好奇)本文将帮助@MarkC。“43141688&xyzpqr”将作为一个整体来阅读,尽量做到这一点”?UserId=43141688&xyzpqr=test“@jomsk1e仍然会得到相同的结果。为什么不显示错误呢?我认为Web API只是尽力选择一条至少与某些URI匹配的路由(在本例中为
UserId
)。我想这取决于这是否是您的实际问题。您是否尝试过使用请求正文代替查询字符串?(我知道这并不能回答问题,只是出于好奇)本文将对@MarkC有所帮助。