SSIS Web服务任务返回一个文件文件,其中包含“<”,< / Value>人物

时间:2017-04-08 10:38:18

标签: sql-server xml ssis etl ssis-2008

我有一个简单的ssis包,它将Web服务方法的结果保存到XML文件中。 连接正常,文件创建,但包含&lt;&gt;标记,而不是<>

如何更换此标签才能更正? enter image description here

2 个答案:

答案 0 :(得分:1)

主要问题是您将xml从Web服务传递为字符串(不推荐)

您必须更改Web方法以返回XmlDocument,将格式正确的xml加载到其中,然后将其传回SSIS。

或者您可以做一些解决方法是在保存xml文件后运行脚本并将&lt;替换为<并将&gt;替换为>

有用的链接

答案 1 :(得分:0)

也是选项之一

    Dim fileFirst As String = Dts.Variables("User::FullFilePath").Value.ToString()
    File.WriteAllText(fileFirst, File.ReadAllText(fileFirst).Replace("&lt;", "<"))

    Dim fileSecond As String = Dts.Variables("User::FullFilePath").Value.ToString()
    File.WriteAllText(fileSecond, File.ReadAllText(fileSecond).Replace("&gt;", ">"))

    Dim fileThird As String = Dts.Variables("User::FullFilePath").Value.ToString()
    File.WriteAllText(fileThird, File.ReadAllText(fileThird).Replace("&amp;", "&"))

    Dim fileFour As String = Dts.Variables("User::FullFilePath").Value.ToString()
    File.WriteAllText(fileFour, File.ReadAllText(fileFour).Replace("&quot;", "\"))

    Dim fileFive As String = Dts.Variables("User::FullFilePath").Value.ToString()
    File.WriteAllText(fileFive, File.ReadAllText(fileFive).Replace("&apos;", "'"))

使用脚本任务 - &gt; VB