主體頁面採 XML + XSLT 生成,非傳統 aspx 輸出。核心優勢:
缺點: 學習曲線陡峭,使用者較少,為最大阻礙。
protected void saveFile(XmlDocument xml, string xsltFile) {
XslTransform xslt = new XslTransform();
xslt.Load(Server.MapPath(XsltFilePath) + xsltFile);
xslt.Transform(xml, null, Response.OutputStream, null);
writer.Close();
}
查詢 SQL 附加 FOR XML AUTO 直接輸出 XML 節點,再用 XmlTextReader 讀取合併至主 XML:
protected void GetXmlBySql(XmlNode xmlNode, string sql, SqlConnection conn) {
SqlCommand sqlCommand = new SqlCommand(sql, conn);
XmlTextReader xmlTextReader = (XmlTextReader)sqlCommand.ExecuteXmlReader();
xmlTextReader.Normalization = true;
try {
while (!xmlTextReader.EOF) {
XmlNode tempXmlNode = xmlNode.OwnerDocument.ReadNode(xmlTextReader);
if (tempXmlNode != null) xmlNode.AppendChild(tempXmlNode);
}
} catch (Exception e) { }
xmlTextReader.Close();
sqlCommand.Dispose();
}