Я не уверен, почему возникает исключение Microsoft.EntityFrameworkCore.DbUpdateException при вызове dbcontext.SaveChangesAsync ()
Сохранение в базе данных включает в себя несколько шагов.
1. Использование Automapper для отображения из viewmodel -> Model. Кажется, это работает нормально
2. Добавление объекта модели в dbcontext - кажется, работает нормально.
3. Сохраните текущие изменения Dbcontext в базе данных, вызвав SaveChangesAsync для dbContext - это вызывает исключение Microsoft.EntityFrameworkCore.DbUpdateException (внутреннее исключение сообщает «Недопустимое имя объекта« Vehicles »)
Прежде всего, вот код контроллера, который делает бизнес. Исключение выдается при вызове SaveChangesAsync
[HttpPost("")]
public async Task<IActionResult> PostNewVehicleData([FromBody]VehicleViewModel vehicleData_)
{
try
{
if (ModelState.IsValid)
{
var newVehicle = _mapper.Map<Vehicle>(vehicleData_);
_vehicleRepository.AddVehicle(newVehicle);
if (await _vehicleRepository.SaveChangesAsync())
{
return Created($"api/Vehicles/{vehicleData_.Notes}", _mapper.Map<VehicleViewModel>(newVehicle));
}
}
return BadRequest("Failed to save the vehicle");
Как указывалось ранее, внутреннее исключение гласит «Неверное имя транспортного средства». В экземпляре класса есть свойство «Транспорт», которое я пытаюсь сохранить. Это свойство «Транспортные средства» существует, поэтому в базовой базе данных можно установить отношение один ко многим (один дилер много транспортных средств) У кого-нибудь есть идеи относительно того, почему ядро EF «жалуется» на это свойство ??
public class Dealer
{
public Dealer()
{
}
public int Id {get; set;}
public string DealerName {get; set;}
public string StreetAddress{get; set;}
public City City{get;set;}
public string PostalCode{get;set;}
public string WebAddress{get;set;}
public string PhoneNumber{get;set;}
public List<Vehicle> Vehicles{get;set;}
public int CityForeignKey{get; set;}
}
The