XslLoadException - 此方法与此类中的另一个方法具有相同的名称和参数类型

时间:2011-05-23 15:43:29

标签: c# xml xls

我有一个XML文件,我有一个随附的XSL转换程序文件,可以使用NAXML标准格式将XML文件转换为xml文件。但是出于某种原因,当我在XslCompiledTransform中调用Load函数时,我得到一个异常

using System.Xml.Xsl;

有问题的代码块:

XslCompiledTransform xlstProcessor = new XslCompiledTransform();
        XsltSettings settings = new XsltSettings();
        settings.EnableScript = true;
        System.Xml.XmlReader reader = System.Xml.XmlReader.Create("C:\\tlog2naxml.xslt");
        System.Xml.XmlResolver resolver = new System.Xml.XmlUrlResolver();
        xlstProcessor.Load(reader, settings, resolver); //Exception occurs here.
        xlstProcessor.Transform(@"C:\vperiodrept.xml", @"C:\test.xml");

我尝试了这些参数的不同变体,但我不断得到这个例外。当我查看XslCompiledTransform类的定义时,我没有看到任何重复的方法签名。这是一个标准的.net类,所以我不希望找到任何。如果有人有任何想法可能导致这种情况,我将非常感谢帮助。

1 个答案:

答案 0 :(得分:3)

问题在于您正在加载的XSLT中的脚本,而不是XslCompiledTransform类;当编译器在转换中编译脚本时,抛出此异常,并且它在脚本中遇到具有相同签名的两个方法。我要看的第一件事是包括 - 我不确定,但我敢打赌编译器可能不够智能,无法识别你何时包含两次相同的文件。