Example #1
0
        public IActionResult EditOwner(OwnerCarIdsViewModel ownerCarViewModel)
        {
            db.Owners.Update(ownerCarViewModel.Owner);
            db.CarOwners
            .RemoveRange(db.CarOwners
                         .Where(x => x.OwnerId == ownerCarViewModel.Owner.Id)
                         );
            db.SaveChanges();

            for (int i = 0; i < ownerCarViewModel.CarsIds.Count(); ++i)
            {
                Car car = db.Cars.FirstOrDefault(x => x.Id == ownerCarViewModel.CarsIds[i]);
                if (car != null)
                {
                    db.CarOwners.Add(new CarOwner()
                    {
                        Owner = ownerCarViewModel.Owner,
                        Car   = car
                    });
                }
            }

            db.SaveChanges();
            return(RedirectToAction("Owners"));
        }
Example #2
0
        public IActionResult EditOwner(int?id)
        {
            if (id != null)
            {
                OwnerCarIdsViewModel ownerCarViewModel = new OwnerCarIdsViewModel()
                {
                    Owner = db.Owners
                            .Include(x => x.CarOwners)
                            .FirstOrDefault(x => x.Id == id)
                };
                if (ownerCarViewModel.Owner != null)
                {
                    ownerCarViewModel.CarsIds = db.CarOwners
                                                .Where(x => x.OwnerId == id)
                                                .Select(y => y.CarId)
                                                .ToList();

                    return(View(ownerCarViewModel));
                }
            }
            return(NotFound());
        }