首页 > 解决方案 > BizTalk 需要两次由 PowerShell 脚本保存的 XmlDocument

问题描述

我有一个执行以下操作的 PowerShell 脚本:

要将文件内容作为 XML 获取,我使用的是这样的:

$xml = [xml](Get-Content $xmlFile.FullName)

并将 XML 保存到新文件中,我正在使用:

$xml.Save($outFileName)

保存后,我移动原始文件:

Move-Item $xmlFile.FullName $successFolder -Force

正如我所说,BizTalk 正在监视保存“$outFileName”的“$out”文件夹。似乎 BizTalk 获取的文件多于生成的文件。我们确信这一点,因为 BizTalk 获取的每个文件都会被记录。

唯一的方法是在$xml.Save. 意味着执行以下步骤:

  1. $xml.Save创建新文件并将内容保存在 $out 文件夹中
  2. BizTalk 获取新创建的文件并对其进行处理
  3. $xml.Save重新创建文件执行结束时的一些步骤
  4. BizTalk 第二次获取“相同”文件

为避免这种情况,我在$outFileName将文件移动到最终文件夹之前将其保存到临时目录。

我的问题:该方法是否有可能$xml.Save()在这种情况下产生两个相同的文件?

标签: xmlpowershellbiztalkxmldocument

解决方案


推荐阅读