示例#1
0
 internal References AddChild(Member arg)
 {
     Children.Add(arg.Id, arg);
     ChildrenIds.Add(arg.Id);
     arg.Refs.ParentId = Source.Id;
     arg.Refs.Parent   = Source;
     return(this);
 }
示例#2
0
        private void ParseRelations(HtmlNode postNode)
        {
            var childrenNodes = postNode.SelectNodes(@"//div[@id='has-children-relationship-preview']//article");

            if (childrenNodes != null)
            {
                foreach (var child in childrenNodes)
                {
                    var childId = int.Parse(child.Attributes["id"].Value.Substring(5));
                    if (childId == PostId)
                    {
                        continue;
                    }

                    var url = child.SelectSingleNode("*//img").Attributes["src"].Value;

                    var md5 = new Regex("[a-fA-F0-9]{32}").Match(url).Value;
                    ChildrenIds.Add($"{childId}:{md5}");
                }
            }


            var parentNodes = postNode.SelectNodes(@"//div[@id='has-parent-relationship-preview']//article");

            if (parentNodes != null)
            {
                var parent   = parentNodes[0];
                var parentId = int.Parse(parent.Attributes["id"].Value.Substring(5));

                var url = parent.SelectSingleNode("*//img").Attributes["src"].Value;

                var md5 = new Regex("[a-fA-F0-9]{32}").Match(url).Value;

                ParentId = $"{parentId}:{md5}";
            }
        }