在我的SSIS包中,我使用的是另一个进程下载的XML文件。
在进入包中的其他工作部分之前,我想确定该文件已完全下载。
我也有方便的XSD文件。
如何在SSIS中验证XML文件是否正确下载?
答案 0 :(得分:2)
要成为有效的XML,文档必须包含单个元素节点(它本身可能包含许多其他节点)。简而言之,您需要获取开始标记的结束标记才能知道您拥有整个文档。根据模式验证此文档是次要的,但可能会有所帮助(或同时完成)。
答案 1 :(得分:2)
我同意Bruno和Teja:该文件应该有效,您应该看到结束标记。但是,我认为你可能从错误的角度来解决这个问题。你能考虑一下
吗?在我看来,您的要求是下载过程可靠,因此您应该尝试保证这一点,而不是处理程序中的不可靠性。
答案 2 :(得分:1)
如果文件正确且完全下载,它显然应该有效。请检查Schema。
答案 3 :(得分:1)
try
XmlDoc = new XMLDocument()
Using XmlStream As New StreamReader(filename)
content = XmlStream.ReadToEnd()
XmlDoc.LoadXml(content)
// write your code here. If it comes here it means file download is complete.
End Using
catch xex as XMLException
// error handling routine
end try