要使用HtmlAgilityPack将<link>或<meta>标签添加到<head>,请按照以下步骤操作:
using HtmlAgilityPack;
public static string AddLinkOrMetaTag(string html, string tagName, string attributeName, string attributeValue, string innerText = null)
{
var htmlDoc = new HtmlDocument();
htmlDoc.LoadHtml(html);
var headNode = htmlDoc.DocumentNode.SelectSingleNode("//head");
if (headNode == null)
{
headNode = HtmlNode.CreateNode("<head></head>");
htmlDoc.DocumentNode.InsertBefore(headNode, htmlDoc.DocumentNode.FirstChild);
}
var newNode = HtmlNode.CreateNode("<" + tagName + " " + attributeName + "=\"" + attributeValue + "\"");
if (!string.IsNullOrEmpty(innerText))
{
newNode.AppendChild(HtmlNode.CreateNode(innerText));
}
newNode.AppendChild(HtmlNode.CreateNode(">"));
headNode.AppendChild(newNode);
return htmlDoc.DocumentNode.OuterHtml;
}
string html = "<html><head></head><body></body></html>";
string tagName = "link"; // 或 "meta"
string attributeName = "rel"; // 对于 "meta" 标签,使用 "name"
string attributeValue = "stylesheet"; // 例如,对于 "link" 标签,使用 "href" 属性
string innerText = null; // 对于 "meta" 标签,可以设置为描述信息
string result = AddLinkOrMetaTag(html, tagName, attributeName, attributeValue, innerText);
这样,您就可以使用HtmlAgilityPack将<link>或<meta>标签添加到<head>了。请注意,此示例仅适用于简单的HTML文档。对于更复杂的HTML文档,您可能需要根据具体情况调整代码。
领取专属 10元无门槛券
手把手带您无忧上云