I'm testing Asp.Net core WebApi with the following basic controller:
[Route("test")]
public class TestController
{
[Route("mult")]
[HttpGet]
public int Multiply(int x, int y)
{
return x * y;
}
}
Then, in Fiddler, I send the following request:
And, for some reason, the response is 0. Both x
and y
are binded to the default integer value when entering the method.
I also tried:
[Route("test")]
public class TestController
{
[Route("mult")]
[HttpGet]
public int Multiply([FromHeader]int x, [FromHeader]int y)
{
return x * y;
}
}
But the result is the same. What am I doing wrong?
form headers accept string
not int
so your code should be
[Route("test")]
public class TestController
{
[Route("mult")]
[HttpGet]
public int Multiply([FromHeader]string x, [FromHeader]string y)
{
return Int32.Parse(x) * Int32.Parse(y);
}
}
you have to get values of x
and y
in string
and convert it to int
Collected from the Internet
Please contact [email protected] to delete if infringement.
Comments