public TariffLimit Add(TariffLimit entity)
 {
     if (entity.Id == Guid.Empty)
     {
         entity.Id = Guid.NewGuid();
     }
     Context.TariffLimits.Add(entity);
     return(entity);
 }
        protected void RegisterTariffLimit(TariffLimit limit)
        {
            var limitRepository = Context.GetTariffLimitRepository();
            var entity          = limitRepository.GetByIdOrNull(limit.Id);

            if (entity == null)
            {
                limitRepository.Add(limit);
            }
            else
            {
                // Ради эксперимента - обновление записи через detach & attach
                // Так можно не переприсваивать все поля
                // Работает!
                Context.Entry(entity).State = System.Data.Entity.EntityState.Detached;
                Context.TariffLimits.Attach(limit);
                Context.Entry(limit).State = System.Data.Entity.EntityState.Modified;
                limitRepository.Update(limit);
            }
        }
示例#3
0
        protected TariffLimit TariffLimitFromList(List <AccountTariff> tariffLimits)
        {
            var result = new TariffLimit()
            {
                ComponentsMax            = tariffLimits.Sum(t => t.TariffLimit.ComponentsMax),
                ComponentTypesMax        = tariffLimits.Sum(t => t.TariffLimit.ComponentTypesMax),
                UnitTestTypesMax         = tariffLimits.Sum(t => t.TariffLimit.UnitTestTypesMax),
                HttpUnitTestsMaxNoBanner = tariffLimits.Sum(t => t.TariffLimit.HttpUnitTestsMaxNoBanner),
                UnitTestsMax             = tariffLimits.Sum(t => t.TariffLimit.UnitTestsMax),
                UnitTestsRequestsPerDay  = tariffLimits.Sum(t => t.TariffLimit.UnitTestsRequestsPerDay),
                UnitTestsMaxDays         = tariffLimits.Sum(t => t.TariffLimit.UnitTestsMaxDays),
                LogMaxDays            = tariffLimits.Sum(t => t.TariffLimit.LogMaxDays),
                LogSizePerDay         = tariffLimits.Sum(t => t.TariffLimit.LogSizePerDay),
                EventsRequestsPerDay  = tariffLimits.Sum(t => t.TariffLimit.EventsRequestsPerDay),
                EventsMaxDays         = tariffLimits.Sum(t => t.TariffLimit.EventsMaxDays),
                MetricsMax            = tariffLimits.Sum(t => t.TariffLimit.MetricsMax),
                MetricsRequestsPerDay = tariffLimits.Sum(t => t.TariffLimit.MetricsRequestsPerDay),
                MetricsMaxDays        = tariffLimits.Sum(t => t.TariffLimit.MetricsMaxDays),
                StorageSizeMax        = tariffLimits.Sum(t => t.TariffLimit.StorageSizeMax),
                SmsPerDay             = tariffLimits.Sum(t => t.TariffLimit.SmsPerDay)
            };

            return(result);
        }
 public void Remove(TariffLimit entity)
 {
     Context.TariffLimits.Remove(entity);
     Context.SaveChanges();
 }
 public TariffLimit Update(TariffLimit entity)
 {
     Context.SaveChanges();
     return(entity);
 }