我尝试使用车辆模型父实体更改车辆实体,执行以下操作:
var vehicleModel = db.VehicleModels.FirstOrDefault(x => x.ID == modelId);
vehicle.VehicleModel = vehicleModel;
db.Entry(vehicle).State = EntityState.Modified;
db.SaveChanges();
车辆正由控制器上的数据绑定填充。
它没有显示任何错误,但是车辆实体没有更新其父实体。
更改父母的正确方法是什么?
编辑1
如果我做了以下更改:
var vehicleToModify = db.Vehicles.FirstOrDefault(x => x.ID == vehicle.ID);
vehicleToModify.VehicleModel = db.VehicleModels.FirstOrDefault(x => x.ID == modelId);
db.Entry(vehicleToModify).State = EntityState.Modified;
db.SaveChanges();
它更新了Parent,但它非常混乱。
有没有一种干净的方法来解决这个问题?
答案 0 :(得分:0)
我设法通过以下方式使其发挥作用:
var vehicleToModify = db.Vehicles.FirstOrDefault(x => x.ID == vehicle.ID);
vehicleToModify.VehicleModel = db.VehicleModels.FirstOrDefault(x => x.ID == modelId);
db.SaveChanges();
感谢@Andrei Filimon的见解。