Exemple #1
0
        private static void UpdateRecordWithConcurrency()
        {
            //simulate two different users updating the same record
            var car = new Car()
            {
                Make = "Yugo", Color = "Brown", CarNickName = "Brownie"
            };

            AddNewRecord(car);
            var repo1 = new CarRepo();
            var car1  = repo1.GetOne(car.CarId);

            car1.CarNickName = "Updated";

            var repo2 = new CarRepo();
            var car2  = repo2.GetOne(car.CarId);

            car2.Make = "Nissan";

            repo1.Save(car1);
            try
            {
                repo2.Save(car2);
            }
            catch (DbUpdateConcurrencyException ex)
            {
                WriteLine(ex);
            }
            //RemoveRecordById(car1.CarId, car1.Timestamp);
        }
Exemple #2
0
 private static void UpdateRecord(int carId)
 {
     using (var repo = new CarRepo())
     {
         //Grab the car, change it, save!
         var carToUpdate = repo.GetOne(carId);
         if (carToUpdate != null)
         {
             WriteLine("Before change: " + repo.Context.Entry(carToUpdate).State);
             carToUpdate.Color = "Blue";
             WriteLine("After change: " + repo.Context.Entry(carToUpdate).State);
             repo.Save(carToUpdate);
             WriteLine("After save: " + repo.Context.Entry(carToUpdate).State);
         }
     }
 }