Exemplo n.º 1
0
        public async Task <Result <TickFormulaErrorCodes> > UpdateAsync(ITickFormula model)
        {
            var entity = TickFormulaEntity.Create(model);

            using (var context = _contextFactory.CreateDataContext())
            {
                context.TickFormulas.Update(entity);

                try
                {
                    await context.SaveChangesAsync();

                    return(new Result <TickFormulaErrorCodes>());
                }
                catch (DbUpdateConcurrencyException e)
                {
                    if (e.Message.Contains(DoesNotExistException))
                    {
                        return(new Result <TickFormulaErrorCodes>(TickFormulaErrorCodes.TickFormulaDoesNotExist));
                    }

                    throw;
                }
            }
        }
Exemplo n.º 2
0
        public async Task <Result <TickFormulaErrorCodes> > DeleteAsync(string id)
        {
            using (var context = _contextFactory.CreateDataContext())
            {
                var entity = new TickFormulaEntity {
                    Id = id
                };

                context.Attach(entity);
                context.TickFormulas.Remove(entity);

                try
                {
                    await context.SaveChangesAsync();

                    return(new Result <TickFormulaErrorCodes>());
                }
                catch (DbUpdateConcurrencyException e)
                {
                    if (e.Message.Contains(DoesNotExistException))
                    {
                        return(new Result <TickFormulaErrorCodes>(TickFormulaErrorCodes.TickFormulaDoesNotExist));
                    }

                    throw;
                }
            }
        }
Exemplo n.º 3
0
        public async Task <Result <TickFormulaErrorCodes> > AddAsync(ITickFormula model)
        {
            var entity = TickFormulaEntity.Create(model);

            using (var context = _contextFactory.CreateDataContext())
            {
                context.TickFormulas.Add(entity);

                try
                {
                    await context.SaveChangesAsync();

                    return(new Result <TickFormulaErrorCodes>());
                }
                catch (DbUpdateException e)
                {
                    if (e.InnerException is SqlException sqlException && sqlException.Number == MsSqlErrorCodes.PrimaryKeyConstraintViolation)
                    {
                        return(new Result <TickFormulaErrorCodes>(TickFormulaErrorCodes.AlreadyExist));
                    }

                    throw;
                }
            }
        }