I am testing my first .net Core WebAPI with Postman
unknown media type error is occurring.
What am I missing?
This is my posting object
public class Country
{
[Key]
public int CountryID { get; set; }
public string CountryName { get; set; }
public string CountryShortName { get; set; }
public string Description { get; set; }
}
This is the webapi controller
[HttpPost]
public async Task<IActionResult> PostCountry([FromBody] Country country)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
_context.Country.Add(country);
try
{
await _context.SaveChangesAsync();
}
catch (DbUpdateException)
{
if (CountryExists(country.CountryID))
{
return new StatusCodeResult(StatusCodes.Status409Conflict);
}
else
{
throw;
}
}
return CreatedAtAction("GetCountry", new { id = country.CountryID }, country);
}
This worked for me (I was using api in the route)
You're not sending the
Content-Type
header. ChooseJSON (application/json)
in the dropdown near the mouse pointer on your first screenshot: