private List <RelatedTag> LoadRelated(List <XElement> relatedElements) { if (relatedElements == null) { return(null); } var tags = new List <RelatedTag>(); foreach (var element in relatedElements) { var href = element.Attribute("href")?.Value; if (!string.IsNullOrEmpty(href)) { var tag = new RelatedTag() { Uri = href, Text = element.Value, OriginalText = GetInnerXml(element) }; var type = element.Attribute("type")?.Value; if (!string.IsNullOrEmpty(type)) { tag.Type = (RelatedType)Enum.Parse(typeof(RelatedType), type, true); } tags.Add(tag); } } return(tags); }
public IActionResult addtag(int productId, string tagname) { var message = 0; try { if (tagname != null) { var data = db.ProductRelatedTagMap.Where(x => x.RelatedTag.Name.ToLower() == tagname.ToLower()).FirstOrDefault(); if (data != null) { string[] words = tagname.Split(','); foreach (var item in words) { var filterData = db.RelatedTag.Where(x => x.Name.ToLower() == item.ToLower() && x.Id == data.RelatedTagId).FirstOrDefault(); if (filterData != null) { filterData.Name = item; db.SaveChanges(); var gettags = db.ProductRelatedTagMap.Where(x => x.RelatedTagId == filterData.Id && x.ProductId == productId).FirstOrDefault(); gettags.RelatedTagId = filterData.Id; gettags.ProductId = productId; db.SaveChanges(); } } } else { string[] words = tagname.Split(','); foreach (var item in words) { RelatedTag tag = new RelatedTag(); tag.Name = item; tag.IsActive = true; db.RelatedTag.Add(tag); db.SaveChanges(); ProductRelatedTagMap gettags = new ProductRelatedTagMap(); gettags.RelatedTagId = tag.Id; gettags.ProductId = productId; db.ProductRelatedTagMap.Add(gettags); db.SaveChanges(); } } message = 1; } } catch (Exception ex) { throw ex; } return(Ok(message)); }
protected bool Equals(RelatedTag other) { return(OwnerTag.Equals(other.OwnerTag) && LinkedTag.Equals(other.LinkedTag)); }