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
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With