您收到错误,因为您无法以这种方式将多个参数传递给WebApi.
第一种选择:
您可以通过以下方式创建一个类并从body传递数据:
public class Foo
{
public string email {get;set;}
public string password {get;set;}
}
public HttpResponseMessage Register([FromBody] Foo foo)
{
//do something
return Ok();
}
第二种选择:
public HttpResponseMessage Register([FromBody]dynamic value)
{
string email= value.email.ToString();
string password = value.password.ToString();
}
并以这种方式传递json数据:
{
"email":"abc@test.com","password":"123@123"
}
更新:
如果您想从URL获取数据,那么您可以使用属性路由.
[Route("api/{controller}/{email}/{password}")]
public HttpResponseMessage Register(string email,string password)
{
//do something
return Ok();
}
注意:网址应为:http:// localhost:50435 / api / SignUp / sini @ gmail.com / sini @ 1234不要忘记在WebApiConfig中启用属性路由如果使用这种方式,则会出现安全问题.