Я пытаюсь протестировать API моего приложения с помощью swagger, при попытке выполнить POST-операцию я получаю сообщение об ошибке ниже
Может кто-нибудь объяснить, почему я не могу выполнить эту операцию?Например, я могу успешно выполнить операцию GET и получить список людей из базы данных.
Это сообщение отладчика.
System.InvalidOperationException: 'Поставщик базы данных не настроендля этого DbContext.Поставщик может быть настроен путем переопределения метода DbContext.OnConfiguring или с помощью AddDbContext в поставщике службы приложений.Если используется AddDbContext, то также убедитесь, что ваш тип DbContext принимает
, который относится к этому методу:
public void InsertPerson(Person person)
{
_context.Persons.Add(person);
}
Это то, что я печатаю в «Попробуйте это»и затем выполните.
{
"personId": 2018,
"firstName": "James",
"middleName": "string",
"lastName": "Joey",
"description": "student",
"telephone": "22002200",
"addressId": 2018,
"address": {
"addressId": 2018,
"streetName": "Forest Avenue",
"houseNumber": "200 B",
"cityId": 2018,
"addressType": "private",
"city": {
"cityId": 2018,
"cityName": "ACity",
"postalcode": "8500",
"provinceState": "SydDjurslland",
"country": "SW",
"addresses": [
null
]
},
"personsResidingAtAddress": [
null
]
},
"emails": [
{
"emailId": 2018,
"emailAddress": "someone@yahoo.com",
"emailType": "private",
"personId": 2018
}
]
}
Я получаю этот «неверный запрос»:
Во всех моих контроллерах метод Get () отображается красным.Например, в приведенном ниже коде «GetPerson» не распознается.Не уверены, имеет ли это какое-либо отношение к этому?
// POST: api/People
[HttpPost]
public async Task<IActionResult> PostPerson([FromBody] Person person)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
_context.Persons.Add(person);
await _context.SaveChangesAsync();
return CreatedAtAction("GetPerson", new { id = person.PersonId }, person);
}
Это метод GetPerson.
// GET: api/People/5
[HttpGet("{id}")]
public async Task<IActionResult> GetPerson([FromRoute] int id)
{
if (!ModelState.IsValid)
{
return BadRequest(ModelState);
}
var person = await _context.Persons.FindAsync(id);
if (person == null)
{
return NotFound();
}
return Ok(person);
}