Xml 使用PowerShell从manifest.xsf文件提取数据
我正在尝试提取有关应用于许多InfoPath表单的规则的信息,我正在使用Powershell进行此操作 我已经解包了Xml 使用PowerShell从manifest.xsf文件提取数据,xml,powershell,Xml,Powershell,我正在尝试提取有关应用于许多InfoPath表单的规则的信息,我正在使用Powershell进行此操作 我已经解包了template.xsn文件,找到了存储此数据的manifest.xsf文件 使用Powershell[xml]$ProjectXmlFile=Get Content manifest.xsf获取xml数据,我正在努力正确识别节点 使用“xsf:”前体标识节点,例如: <xsf:submit caption="Submit" disableMenuItem="no" onAf
template.xsn
文件,找到了存储此数据的manifest.xsf
文件
使用Powershell[xml]$ProjectXmlFile=Get Content manifest.xsf
获取xml数据,我正在努力正确识别节点
使用“xsf:
”前体标识节点,例如:
<xsf:submit caption="Submit" disableMenuItem="no" onAfterSubmit="close" showStatusDialog="no">
<xsf:errorMessage>The form cannot be submitted because of an error.</xsf:errorMessage>
<xsf:davAdapter name="SharePoint Library Submit" submitAllowed="yes" overwriteAllowed="no">
<xsf:folderURL value="../"></xsf:folderURL>
<xsf:fileName value="my:Submit/my:ref" valueType="expression"></xsf:fileName>
</xsf:davAdapter>
</xsf:submit>
或者我无法访问这些节点还有其他原因吗?通过将属性设置为$false
值,可以禁用命名空间支持
$x = @'
<xsf:submit caption="Submit" disableMenuItem="no" onAfterSubmit="close" showStatusDialog="no">
<xsf:errorMessage>The form cannot be submitted because of an error.</xsf:errorMessage>
<xsf:davAdapter name="SharePoint Library Submit" submitAllowed="yes" overwriteAllowed="no">
<xsf:folderURL value="../"></xsf:folderURL>
<xsf:fileName value="my:Submit/my:ref" valueType="expression"></xsf:fileName>
</xsf:davAdapter>
</xsf:submit>
'@
$xml = New-Object -TypeName System.Xml.XmlDocument
$sr = New-Object -TypeName System.IO.StringReader $x
$xtr = New-Object -TypeName System.Xml.XmlTextReader $sr
$xtr.Namespaces = $false
$xml.Load($xtr)
$xml.'xsf:submit'.'xsf:errorMessage'
通过将属性设置为$false
值,可以禁用命名空间支持
$x = @'
<xsf:submit caption="Submit" disableMenuItem="no" onAfterSubmit="close" showStatusDialog="no">
<xsf:errorMessage>The form cannot be submitted because of an error.</xsf:errorMessage>
<xsf:davAdapter name="SharePoint Library Submit" submitAllowed="yes" overwriteAllowed="no">
<xsf:folderURL value="../"></xsf:folderURL>
<xsf:fileName value="my:Submit/my:ref" valueType="expression"></xsf:fileName>
</xsf:davAdapter>
</xsf:submit>
'@
$xml = New-Object -TypeName System.Xml.XmlDocument
$sr = New-Object -TypeName System.IO.StringReader $x
$xtr = New-Object -TypeName System.Xml.XmlTextReader $sr
$xtr.Namespaces = $false
$xml.Load($xtr)
$xml.'xsf:submit'.'xsf:errorMessage'
The form cannot be submitted because of an error.