无法从“dir IIS:\ AppPools”中选择“应用程序”属性

时间:2014-10-05 15:21:16

标签: powershell iis

dir IIS:\AppPools清楚地输出分配给每个AppPool的应用程序" Applications"标签

我的问题是我似乎无法选择该属性,而且我无法使用Get-Member找到它。

enter image description here

我错过了什么?

2 个答案:

答案 0 :(得分:0)

您可以使用此语法在AppPool上查看大多数可用属性及其值:

ls IIS:\AppPools | where {$_.Name -eq "NameOfYourAppPool"}| fl *

答案 1 :(得分:0)

this answer to a related question中所述,Get-ItemGet-Child-Item命令所示的AppPool项的属性实际上是用于显示目的的计算列。这就是为什么它没有出现Get-Member。

此计算列在幕后使用Get-WebConfigurationProperty

要将Pool的Web应用程序作为Web配置对象,您可以使用我写的这个函数:

filter Get-WebApplicationForPool()
{
    $s = $_.Name
    $filter = "system.applicationHost/sites/site/application[@applicationPool='$s']"
    Push-Location .
    Set-Location "IIS:\Sites"
    Get-WebConfiguration -filter $filter -PSPath "IIS:\Sites" 
    Pop-Location
}

示例:

Set-Location IIS:\AppPools
Get-Item "DefaultAppPool" | Get-WebApplicationForPool