示例#1
0
        private void UpdateConsume(LastConsume consume, Drink drink, int sugarLevel, bool usedMug)
        {
            consume.Drink1     = drink;
            consume.Drink      = drink.Id;
            consume.SugarLevel = sugarLevel;
            consume.UseMug     = usedMug;


            using (var dbContextTransaction = Context.Database.BeginTransaction())
            {
                var query = Context.LastConsume.Add(consume);
                Context.SaveChanges();
                dbContextTransaction.Commit();
            }
        }
示例#2
0
        private void CreateConsume(Drink drink, string uid, int sugarLevel, bool usedMug)
        {
            var consume = new LastConsume()
            {
                Uid        = uid,
                Drink      = drink.Id,
                Drink1     = drink,
                SugarLevel = sugarLevel,
                UseMug     = usedMug,
            };


            using (var dbContextTransaction = Context.Database.BeginTransaction())
            {
                var query = Context.LastConsume.Add(consume);
                try
                {
                    // Your code...
                    // Could also be before try if you know the exception occurs in SaveChanges

                    Context.SaveChanges();
                }
                catch (DbEntityValidationException e)
                {
                    foreach (var eve in e.EntityValidationErrors)
                    {
                        _logger.Log(LogLevel.Error, "Entity of type \"{0}\" in state \"{1}\" has the following validation errors:",
                                    eve.Entry.Entity.GetType().Name, eve.Entry.State);
                        foreach (var ve in eve.ValidationErrors)
                        {
                            _logger.Log(LogLevel.Error, "- Property: \"{0}\", Error: \"{1}\"",
                                        ve.PropertyName, ve.ErrorMessage);
                        }
                    }
                    throw;
                }

                dbContextTransaction.Commit();
            }
        }