public void UpdateColour(DB_Colour colour)
        {
            if (colour == null)
            {
                throw new ArgumentNullException(nameof(colour));
            }

            if (colour.ID < 1)
            {
                _db.DB_Colours.InsertOnSubmit(colour);
            }

            _db.SubmitChanges();
        }
Ejemplo n.º 2
0
        public void UpdateColour(Colour colour)
        {
            if (colour == null)
            {
                throw new ArgumentNullException(nameof(colour));
            }

            if (!colour.IsValid())
            {
                throw new ArgumentException("colour is invalid!");
            }

            lock (colour)
            {
                var       isNew = false;
                DB_Colour dbColour;
                if (colour.IsPersisted)
                {
                    dbColour = Controller.Instance.Repository.GetColour(colour.Id);
                }
                else
                {
                    dbColour = new DB_Colour();
                    isNew    = true;
                }

                dbColour.Name = colour.Name;
                Controller.Instance.Repository.UpdateColour(dbColour);

                if (isNew)
                {
                    colour.Id          = dbColour.ID;
                    colour.IsPersisted = true;
                    Controller.Instance.CacheManager.Remove("Colours");
                }
            }
        }