HTML 민첩성 팩 - Head 요소의 맨 위에 요소를 추가하는 방법은 무엇입니까?

.net asp.net-mvc-2 c# html-agility-pack

문제

HTML 애자 팩을 사용하여 HTML 요소의 HEAD 섹션 맨 위에 스크립트 요소를 추가하려고합니다. 지금까지 본 예제에서는 AppendChild(element) 메서드를 사용하여이를 수행합니다. 다른 스크립트보다 먼저 머리 부분에 추가 할 스크립트가 필요합니다. 이것을 어떻게 지정할 수 있습니까?

여기 내가 뭘하려고하는지 :

HtmlDocument htmlDocument = new HtmlDocument();
htmlDocument.Load(filePath);
HtmlNode head = htmlDocument.DocumentNode.SelectSingleNode("/html/head");
HtmlNode stateScript = htmlDocument.CreateElement("script");
head.AppendChild(stateScript);
stateScript.SetAttributeValue("id", "applicationState");
stateScript.InnerHtml = "'{\"uid\":\"testUser\"}'";

끝에 추가하지 않고 HEAD 상단에 스크립트 태그를 추가하고 싶습니다.

인기 답변

이것이 낡은 질문이라는 것을 알았다면, 존재하지 않았을 수도있는 자식 요소를 미리 보류 할 가능성도 있습니다.

// Load content as new Html document
HtmlDocument html = new HtmlDocument();
html.LoadHtml(oldContent);

// Wrapper acts as a root element
string newContent = "<div>" + someHtml + "</div>";

// Create new node from newcontent
HtmlNode newNode = HtmlNode.CreateNode(newContent);

// Get body node
HtmlNode body = html.DocumentNode.SelectSingleNode("//body");

// Add new node as first child of body
body.PrependChild(newNode);

// Get contents with new node
string contents = html.DocumentNode.InnerHtml;



아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.