visual studio 2015 xsl调试转换失败WebException SocketException

时间:2016-09-22 09:43:21

标签: xml visual-studio xslt visual-studio-debugging

在VS 2015中调试xslt时,我收到以下错误消息

“xsl转换失败请参阅输出窗口以获取详细信息WebException无法连接到远程服务器SocketException无法建立连接,因为目标计算机主动拒绝它127.0.0.1:1234”

如果我在xml文档中开始使用光标进行调试(而不是xsl),它有时会起作用,但并非总是如此。

3 个答案:

答案 0 :(得分:3)

在我的网页项目中,我通过点击“调试 - >开始而不调试”来修复此问题。然后,我可以正常方式进行visual studio xsl调试。

我不确定为什么这样可以解决这个问题。但我认为xsl调试器是从localhost获取xml架构的,并且由于127.0.0.1:1234没有启动它将无法获取它。

但是它试图从localhost获取什么?我在猜测,但当我将光标放在xsl文档中并单击xml->模式时,我从本地项目中看到了一个xsd。不知怎的,VS可能认为它参与了变形,但它不是。

我也使用了xsl中的文档功能。但是我可以在浏览器中请求这些文档,所以我不认为他们可能会导致拒绝请求。

另一种可能性是文档功能从生产域请求非开发(非本地主机)xml文档。正如我所说,该文件是可以获取的,但也许有一个原产地限制域?

答案 1 :(得分:0)

尽管问题已经得到回答,但我仍在发布此信息,以便对答案不起作用的其他人可以有其他选择。

一切都很好,所有文件都存在于我的Web应用程序中,当我单击“无需调试即可启动XSLT”时,VS仍然给了我“ WebException”。我尝试了这里给出的答案,但是没有用。

然后,我在其他Visual Studio实例中打开我的XML文件(只是XML文件;不是项目或解决方案所在的),然后单击相同的“不调试即可启动XSLT”。而这一工作。

似乎当您尝试在Web应用程序项目下转换文件时,Visual Studio尝试做一些额外的事情。但是,如果您不必通过在VS中加载Web应用程序项目来运行XSLT,则此答案可能会对您有所帮助。

答案 2 :(得分:0)

虽然上面的答案对我有用,但并不总是有效。此问题的根本原因是Visual Studio处于Web解决方案模式而不是文件夹模式。前者几乎没有权限,并且安全限制阻止您的XSLT通过document函数获取xml。在文件夹模式下,您的xslt将能够执行任何操作,完全权限,没有限制并且没有XslCompiledTransform LoadCompiledQuery.Query.staticData异常。