Я создаю HTML-документ, используя пакет agility HTML.Я загружаю файл шаблона и добавляю к нему содержимое.Все это работает, но когда я просматриваю выходной файл, он удаляет закрывающий тег из моих тегов <br/>
, чтобы он выглядел следующим образом <br>
.Что вызывает это?
Dim doc As New HtmlDocument()
doc.Load(Server.MapPath("Template.htm"))
Dim title As HtmlNode = doc.DocumentNode.SelectSingleNode("//title")
title.InnerHtml = title.InnerHtml & "CEU Classes"
Dim topContent As HtmlAgilityPack.HtmlNode = doc.GetElementbyId("topContent")
topContent.InnerHtml = html.ToString
doc.OptionWriteEmptyNodes = True
doc.Save(outputFileName, Encoding.UTF8)
Дополнительная информация:
Он удалял мои закрывающие теги изображений, после того как я добавил doc.OptionWriteEmptyNodes = True
, он вполне это делал.
Обновление
Это мой код в его нынешнем виде, который удаляет закрывающий тег BR
Dim html As String = "Words<br/>more words"
Dim doc As New HtmlDocument()
Dim title As HtmlNode
Dim topContent As HtmlNode
HtmlNode.ElementsFlags("br") = HtmlElementFlag.Empty
doc.Load(Server.MapPath("Template.htm"))
Title = doc.DocumentNode.SelectSingleNode("//title")
title.InnerHtml = title.InnerHtml & "CEU Classes"
topContent = doc.GetElementbyId("topContent")
topContent.InnerHtml = html.ToString
doc.OptionWriteEmptyNodes = True
doc.Save(outputFileName, Encoding.UTF8)
Обновление 2
Iв конечном итоге просто прочитал в моем файле шаблона в качестве стандартной строки, а затем загрузить HTML, как это
Dim TemplateHTML As String = File.ReadAllText(Server.MapPath("Template.htm"))
TemplateHTML = TemplateHTML.Insert(TemplateHTML.IndexOf("<div id=""topContent"">") + "<div id=""topContent"">".Length, _
html.ToString)
doc.LoadHtml(TemplateHTML)