有人能幫助我。我需要在C#中刪除節點「xsl:variable」,如下所示,這裏是兩個xsl:模板節點,其中包含子元素xsl:variable。在這個示例中,我需要使用C#將其刪除。C#XSLT刪除節點
事情是這樣的:
XmlDocument d = new XmlDocument();
d.Load("MyFileName.Xml");
XmlNode t = d.SelectSingleNode("/navigation/page[@id='1']");
t.ParentNode.RemoveChild(t);
d.Save();
但我不能得到 '的xsl:變量' 的路徑d.SelectSingleNode()
請幫幫我嗎?
THIS IS XSLT:
<xsl:template name="Aggregate:RealECBooleanToXMLBoolean">
<xsl:param name="RealECBoolean" select="/.."/>
<xsl:variable name="var1_result">
<xsl:value-of select="($RealECBoolean = 'Yes')"/>
<xsl:value-of select="($RealECBoolean = 'YES')"/>
<xsl:value-of select="($RealECBoolean = 'X')"/>
</xsl:variable>
<xsl:variable name="var2_resultof_any" select="boolean(translate(normalize-space($var1_result), 'false0 ', ''))"/>
<xsl:choose>
<xsl:when test="string((string((string($var2_resultof_any) != 'false')) != 'false')) != 'false'">
<xsl:value-of select="(string((string($var2_resultof_any) != 'false')) != 'false')"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="false()"/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
<xsl:template name="Aggregate:LookupRECodeName">
<xsl:param name="RECode" select="/.."/>
<xsl:call-template name="vmf:vmf1_inputtoresult">
<xsl:with-param name="input" select="$RECode"/>
</xsl:call-template>
</xsl:template>
它可以不被發現,因爲「的xsl:」節點命名空間沒有被定義。此鏈接可以幫助: http://stackoverflow.com/questions/443250/creating-a-specific-xml-document-using-namespaces-in-c-sharp – M3NTA7 2012-04-09 18:52:26
謝謝M3NTA7我有一個代碼,讓所有的xsl:模板節點,但下一步是刪除所有的孩子xsl:變量節點,我不能做這個樣本鞋面。需要SingleNode值。 – Zire 2012-04-09 18:58:41