internal Link Clone() { var link = new Link { Id = Id, Name = Name, Url = Url, Category = Category, Tags = new ObservableCollection<Tag>(Tags) }; return link; }
public async Task<int> RemoveTagFromLink(Link SelectedLink, Tag SelectedUsedTag) { try { _dataService.Links.Attach(SelectedLink); _dataService.Tags.Attach(SelectedUsedTag); SelectedLink.Tags.Remove(SelectedUsedTag); return await _dataService.SaveChangesAsync(); } catch (Exception ex) { throw ex; } }
public async Task<int> AddNewTagsToLink(Link SelectedLink, string[] newTags) { try { List<Tag> newTagsList = new List<Tag>(); foreach (var newTagValue in newTags) { var newTag = _autofac.Resolve<Tag>(); newTag.Value = newTagValue; var result = CreateAsync(newTag); Debug.WriteLine("Tag created: " + newTag.Value + " Result: " + result); newTagsList.Add(newTag); } _dataService.Links.Attach(SelectedLink); foreach (var tag in newTagsList) SelectedLink.Tags.Add(tag); return await _dataService.SaveChangesAsync(); } catch (Exception ex) { throw ex; } }
public async Task<int> AddTagToLink(Link selectedLink, Tag selectedAvailableTag) { try { _dataService.Links.Attach(selectedLink); _dataService.Tags.Attach(selectedAvailableTag); selectedLink.Tags.Add(selectedAvailableTag); return await _dataService.SaveChangesAsync(); } catch (Exception ex) { throw ex; } }