public HtmlStringHelper StripTags(IEnumerable <string> whitelist, IEnumerable <string> blacklist)
 {
     WhiteListedTags.AddRange(whitelist);
     foreach (var b in blacklist)
     {
         BlackListedTags.Add(b, true);
     }
     return(this);
 }
 private void RemoveTags(HtmlNode node)
 {
     if (BlackListedTags.ContainsKey(node.Name) || !WhiteListedTags.Contains(node.Name))
     {
         if (!node.HasChildNodes)
         {
             node.ParentNode.RemoveChild(node);
         }
         else
         {
             for (var i = node.ChildNodes.Count - 1; i >= 0; i--)
             {
                 var child = node.ChildNodes[i];
                 node.ParentNode.InsertAfter(child, node);
             }
             node.ParentNode.RemoveChild(node);
         }
     }
 }