public void AddLabel(string text, Guid todoId, Guid userId) { var item = _base.TodoItems.FirstOrDefault(s => s.Id.Equals(todoId) && s.UserId.Equals(userId)); var label = _base.TodoItemLabels.FirstOrDefault(s => s.Value == text); if (item != null) { if (label == null) { label = new TodoItemLabel(text); _base.TodoItemLabels.Add(label); } label.LabelTodoItems.Add(item); item.Labels.Add(label); _base.SaveChanges(); } }
public void AddLabel(TodoItem item, string text) { TodoItemLabel label; if (_context.TodoItemLabels.Any(l => l.Value.ToLower().Equals(text.ToLower()))) { label = _context.TodoItemLabels.First(l => l.Value.ToLower().Equals(text.ToLower())); } else { label = new TodoItemLabel(text); _context.TodoItemLabels.Add(label); } if (!item.Labels.Any(l => l.Value.ToLower().Equals(text.ToLower()))) { item.Labels.Add(label); } _context.SaveChanges(); }