在xml檔案中,如果要引入樣式表xsl,就必須有這樣一句:<?xml-stylesheet type="text/xsl" href="sample.xsl"?>
如果我們要用c#來添加樣式表,那麼方法如下:
XmlDocument doc = new XmlDocument();
doc.Load(xmlFile);
// Add xsl style to the .xml
XmlProcessingInstruction xmlXsl = doc.CreateProcessingInstruction("xml-stylesheet", "type=\"text/xsl\" href=\"sample.xsl\""); //調用CreateProcessingInstruction方法
doc.AppendChild(xmlXsl);
doc.Save(xmlFile);
如果我們要對xml中已有的樣式表進行替換,那麼可以採用如下方法:
XmlDocument doc = new XmlDocument();
doc.Load(xmlFile);
XmlNode xmlNode = doc.SelectSingleNode("/processing-instruction('xml-stylesheet')"); //Select the old stylesheet
//Replace xsl stylesheet to the .xml
XmlProcessingInstruction xmlXsl = doc.CreateProcessingInstruction("xml-stylesheet", "type=\"text/xsl\" href=\"newstyle.xsl\"");
doc.ReplaceChild(xmlXsl, xmlNode); //調用replacechild方法來用新樣式表替換舊樣式
doc.Save(xmlFile);