C # HtmlDecode Tylko określone znaczniki

Mam duży ciąg znaków htmlencoded i chcę zdekodować tylko określone znaczniki html na białej liście.

Czy istnieje sposób, aby to zrobić w c #, WebUtility.HtmlDecode () dekoduje wszystko.

`Szukam implementacji DecodeSpecificTags (), która przejdzie poniżej testu.

    [Test]
    public void DecodeSpecificTags_SimpleInput_True()
    {
        string input = "<span>i am <strong color=blue>very</strong> big <br>man.</span>";
        string output = "&lt;span&gt;i am <strong color=blue>very</strong> big <br>man.&lt;/span&gt;";
        List<string> whiteList = new List<string>(){ "strong","br" } ;

        Assert.IsTrue(DecodeSpecificTags(whiteList,input) == output);
    }`

questionAnswers(3)

yourAnswerToTheQuestion