HtmlAgilityPack HtmlDocument.Save () Работает по-разному в зависимости от состояния Save-to Directory

c# html-agility-pack

Вопрос

Мне нужно сохранить вывод с веб-страницы в виде файла .html, чтобы впоследствии преобразовать его в изображение. Вот код, который я использую, чтобы удалить ненужные компоненты и оставить только таблицу:

protected override void Render(HtmlTextWriter writer)
{
    using (HtmlTextWriter htmlwriter = new HtmlTextWriter(new StringWriter()))
    {
        base.Render(htmlwriter);
        string renderedContent = htmlwriter.InnerWriter.ToString();
        string output = renderedContent.Replace(@"<input type=""submit"" name=""viewReport"" value=""View Report"" id=""viewReport"" />", "");
        output = output.Replace(@"<input type=""submit"" name=""redoEdits"" value=""Redo Edits"" id=""redoEdits"" />", "");
        output = output.Replace(@"<a href=""http://w3.td.com/td/intranet/tdweb""><img src=""Trends/TDBFGLogo5.gif"" alt=""TD Home"" title=""TD Home"" height=""40px"" width=""40px"" style=""float: left; border: none"" /></a>", "");
        output = output.Replace(@"<hr style=""background-color: #8bb093; height: 30px; width: 100%; float: left"" />", "");
        output = output.Replace(@"<h1>Network Operations Dashboard</h1>", "");

        HtmlDocument doc = new HtmlDocument();
        doc.LoadHtml(output);

        HtmlNode node = doc.DocumentNode.SelectSingleNode("//select[@name='Archives']");
        node.Remove();
        node = doc.DocumentNode.SelectSingleNode("//ul[@id='mainNav']");
        node.Remove();
        string fileName = currDir + "\\dashboardTableOutput.html";
        doc.Save(fileName);

        writer.Write(renderedContent);
    }
}

Когда я звоню:

doc.Save(currDir + "\\dashboardTableOutput.html");

Я получаю файл .html, который отображается следующим образом:

введите описание изображения здесь

Когда я звоню

doc.Save(currDir + "\\" + reportDir + "\\dashboardTableOutput.html");

Я получаю файл .html, который отображается следующим образом:

введите описание изображения здесь

с отсутствием всей макетной и графической информации. Я не могу придумать, почему изменение каталога, который я сохраняю, повлияет.

Любые советы приветствуются.

С уважением.

Принятый ответ

Я предполагаю, что у вас уже есть файл .CSS где-то (возможно, в currDir + "\\" + reportDir ?), На который ссылается файл .html - правильно, в одном случае, а не правильно, в другом.



Related

Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow