Пример #1
0
        public Task UpdateAsync(StuffItem item)
        {
            return(Task.Run(() =>
            {
                if (item.Id.HasValue) // update
                {
                    var updateitem = GetItemById(item.Id.Value);
                    if (updateitem == null)
                    {
                        return;
                    }

                    if (item.Name?.ToLower() != StuffItem.Undefined)
                    {
                        updateitem.Name = item.Name;
                    }
                    if (item.Description?.ToLower() != StuffItem.Undefined)
                    {
                        updateitem.Description = item.Description;
                    }

                    _stuffContext.StuffItems.Update(updateitem);
                }
                else //Add new
                {
                    if (item.Name?.ToLower() == StuffItem.Undefined)
                    {
                        item.Name = null;
                    }
                    if (item.Description?.ToLower() == StuffItem.Undefined)
                    {
                        item.Description = null;
                    }

                    _stuffContext.StuffItems.Add(item);
                }

                _stuffContext.SaveChanges();

                if (item.Id.HasValue && item.Tags != null && item.Tags.Count > 0)
                {
                    var tags = GetTagsByStuff(item.Id);
                    if (tags.Count > 0)
                    {
                        _tagContext.TagItems.RemoveRange(tags);
                        _tagContext.SaveChanges();
                    }

                    foreach (var tag in item.Tags)
                    {
                        tag.Id = 0;
                        tag.StuffId = item.Id.Value;
                    }

                    _tagContext.TagItems.AddRange(item.Tags);
                    _tagContext.SaveChanges();
                }
            }));
        }
Пример #2
0
        public StuffController(StuffContext context)
        {
            _context = context;

            if (_context.StuffItems.Count() == 0)
            {
                _context.StuffItems.Add(new StuffItem {
                    Id       = 11,
                    Name     = "Item1",
                    Category = "Fantastic",
                    Date     = "09/03/1991",
                    Author   = "Werber"
                });
                _context.SaveChanges();
            }
        }