将xml变量传递给xslt中的c#方法

时间:2013-09-05 07:10:55

标签: xslt

我有xslt转换,其中我使用c#代码来保存输入并将xml输出到数据库。 但它只保存所有标签的值。 但我想保存vhole xml。

<msxsl:script language="CSharp" implements-prefix="ConnectDatabase">
          <msxsl:assembly name = "System.Data"/>
          <msxsl:using namespace = "System.Data"/>
          <msxsl:using namespace = "System.Data.SqlClient"/>
          <msxsl:using namespace = "System.Collections.Generic"/>

<![CDATA[      
   public void LogINOUT(string inputxml, string outputxml)
    {
        SqlCommand cmd = null;
        string command = "INSERT INTO dbo.XsltLog (InputXml,OutputXml) VALUES (@inputxmlpar,@outputxmlpar)";
        string connectionString ="Data Source=MyConneCtionStiring;


        SqlParameter inputxmlpar = new SqlParameter("@inputxmlpar", SqlDbType.NVarChar);
        inputxmlpar.Value=inputxml;
        SqlParameter outputxmlpar = new SqlParameter("@outputxmlpar", SqlDbType.NVarChar);
        outputxmlpar.Value =outputxml;

        using (SqlConnection connection = new SqlConnection(connectionString))
        {
          cmd = new SqlCommand(String.Format(command), connection);
          cmd.Parameters.Add(inputxmlpar);
          cmd.Parameters.Add(outputxmlpar);

            connection.Open();
            cmd.ExecuteScalar();
        }
    }

   ]]></msxsl:script>

然后调用它<xsl:copy-of select ="ConnectDatabase:LogINOUT( $inputxml,$outputxml)" />

数据库中的

和outputxml是这样的: TO_TESTY45000.0000000020

从这个字符串我什么都不知道 我不会

<Data>
                            <Result>TO_TEST</Result>
                            <IncludeInVolume>Y</IncludeInVolume>
                            <FinancedAmont>
                                <xsl:value-of select="/Contract/ContractCalculations/Calculation/CalculationStep[@Code='FinancedAmount']"/>
                            </FinancedAmont>
                            <NumberOfInstalments>
                                <xsl:value-of select="format-number(/Contract/ContractCalculations/Calculation/CalculationStep[@Code='InstalmentNumber'],'#')"/>
                            </NumberOfInstalments>
                        </Data>

与inputxml相同的问题

感谢帮助Dana

0 个答案:

没有答案