Esempio n. 1
0
        public int Save <TEntity>(TEntity entity, Func <TEntity, TEntity> getDbEntity = null, Action <TEntity, TEntity> onUpdate = null) where TEntity : class, IEntity
        {
            if (entity.IsNew())
            {
                Create();
            }
            else
            {
                Update();
            }

            return(entity.Id);

            void Create()
            {
                context.Set <TEntity>().Add(entity);
                context.SaveChanges();
            }

            void Update()
            {
                var dbEntity = getDbEntity != null?getDbEntity(entity) : context.Set <TEntity>().SingleOrDefault(x => x.Id == entity.Id);

                if (dbEntity == null)
                {
                    entity.MakeNew();
                    Create();
                }
                else
                {
                    this.Update(dbEntity, entity, onUpdate);
                    context.SaveChanges();
                }
            }
        }
Esempio n. 2
0
        public Product Add(Product obj)
        {
            obj.Id = context.Products.Max(o => o.Id) + 1;
            Product prod = new Product
            {
                Code = obj.Code,
                Id   = obj.Id,
                Name = obj.Name,
                Type = obj.Type
            };

            context.Products.Add(prod);
            context.SaveChanges();
            return(prod);
        }
        public Resource Add(Resource obj)
        {
            obj.Id = this.context.Resources.Max(o => o.Id) + 1;
            Resource res = new Resource
            {
                Author      = obj.Author,
                Description = obj.Description,
                Id          = obj.Id,
                Image       = obj.Image,
                Name        = obj.Name,
                Type        = obj.Type,
                Url         = obj.Url
            };

            context.Resources.Add(res);
            context.SaveChanges();
            return(res);
        }
Esempio n. 4
0
        public User Add(User obj)
        {
            obj.Id        = context.Users.Any() ? context.Users.Max(o => o.Id) + 1 : 0;
            obj.RoleId    = 2;
            obj.Activated = true;
            User user = new User
            {
                Activated    = obj.Activated,
                Email        = obj.Email,
                Id           = obj.Id,
                Name         = obj.Name,
                Password     = obj.Password,
                PasswordSalt = obj.PasswordSalt,
                RoleId       = obj.RoleId,
                Surname      = obj.Surname,
                Username     = obj.Username
            };

            context.Users.Add(user);
            context.SaveChanges();
            return(user);
        }