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); }
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}"; } }