Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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));
        }
Esempio n. 3
0
 protected bool Equals(RelatedTag other)
 {
     return(OwnerTag.Equals(other.OwnerTag) && LinkedTag.Equals(other.LinkedTag));
 }