使用htmlagilitypack或system.xml解析XSL文件

时间:2015-04-01 07:39:21

标签: c# xml-parsing html-agility-pack xmldocument

我有一个XSL文件的以下部分:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="html" indent="yes" encoding="US-ASCII" doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN"/>

<!-- Defined parameters (overrideable) -->
<xsl:param name="showData" select="'n'"/>

<!--other templates-->

<xsl:template name="pageHeader">
<h1>Load Test Results</h1>
<table width="100%">
    <tr>
        <td align="left"/>
        <td align="right">
    </tr>
</table>
<hr size="1"/>
</xsl:template>

<xsl:template name="testOptions">
<h2><a id="test_options">Test options</a></h2>
<table class="details" border="0" cellpadding="5" cellspacing="2" width="26%">
    <tr valign="top">
        <th align="left">Id</th>
        <th align="left">Number of Users</th>
        <th align="left">Rampup</th>
        <th align="left">Loop count</th>
    </tr>
    <tr>
        <td id="role">#</td>
        <td>13</td>
        <td>14 s</td>
        <td>15</td>
    </tr>
</table>
<hr size="1"/>
</xsl:template>
</xsl:stylesheet>

我想更改testOptions模板第二个tr标签(13,14,15)中的值。如何使用HtmlAgilityPack或System.Xml?

到目前为止,我有:

HtmlDocument doc = new HtmlDocument();
doc.Load(@"C:\jmeter-results-detail.xsl");
var x = doc.DocumentNode.SelectNodes(".//tr");

foreach(HtmlNode link in  x)
{
    Console.WriteLine(link.OuterHtml);
}

0 个答案:

没有答案