PowerShell System.Xml.Linq无法将Xml解析为HTML

PowerShell System.Xml.Linq无法将Xml解析为HTML,html,xml,linq,powershell,powershell-4.0,Html,Xml,Linq,Powershell,Powershell 4.0,我目前正在尝试使用提供的这个脚本格式化HTML表 我设法使大多数函数正常工作,但无法使AddHtmlTableColor函数正常工作 我使用的代码如下所示: $params = @{ Column = "Used (GB)" ScriptBlock = {[double]$args[0] -gt [double]$args[1]}} Get-PSDrive -PSProvider FileSystem | New-HTMLTable -setAlternating $false | Add-H

我目前正在尝试使用提供的这个脚本格式化HTML表

我设法使大多数函数正常工作,但无法使AddHtmlTableColor函数正常工作

我使用的代码如下所示:

$params = @{
Column = "Used (GB)"
ScriptBlock = {[double]$args[0] -gt [double]$args[1]}}

Get-PSDrive -PSProvider FileSystem | New-HTMLTable -setAlternating $false | Add-HTMLTableColor -Argument 40 -attrValue "background-color:#FFFF99;" @params
但是,它会抛出一个错误:名称空间不正确

我深入研究了TechNet上提供的脚本,发现在传递HTML时,System.Xml.Linq的解析函数返回大Xml节点,而不是单独的Xml节点。它确实声明它需要System.Xml.Linq v2,我只找到了v3和v4的dll


不正确的版本是问题的根源吗?还是它无法将HTML正确解析为XML的另一个原因?还是完全是另一个问题?

我测试了另一个库,它使用系统中的System.Xml.Linq dll文件。它在尝试使用dll时也返回了一个错误

在将Linq dll需求替换为Linq功能的相应导入后,两个库中的两个函数都正常工作

因此,确定Linq dll与PowerShell不完全兼容,无法将HTML完美解析为XML

解决方案是要么使用自定义的assmebly导入(如本文中的导入),要么同时使用不同的库