我正在尝试浏览 SQL Server 对象中的所有项目。我正在使用 SQL Server 群集,并使用此代码(从另一个页面提取)从 2 个特定项目中获取值。
[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.SqlServer.Smo') | out-null;
$srv = New-Object 'Microsoft.SqlServer.Management.Smo.Server' $cluster_name;
$properties = $srv.Properties
$owner_node = $properties.Item('ComputerNamePhysicalNetBIOS').Value;
$is_clustered = $properties.Item('IsClustered').Value
这让我很疑惑:我该如何浏览此对象中的其他项目?当我尝试 "$properties | get-member" 时,它只返回:
TypeName: Microsoft.SqlServer.Management.Smo.Property
Name MemberType Definition
---- ---------- ----------
CompareTo Method int CompareTo(System.Object obj)
Equals Method bool Equals(System.Object o)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
Dirty Property System.Boolean Dirty {get;}
Expensive Property System.Boolean Expensive {get;}
IsNull Property System.Boolean IsNull {get;}
Name Property System.String Name {get;}
Readable Property System.Boolean Readable {get;}
Retrieved Property System.Boolean Retrieved {get;}
Type Property System.Type Type {get;}
Value Property System.Object Value {get;set;}
Writable Property System.Boolean Writable {get;}
当我尝试“$properties.item | get-member”时返回相同的结果。
答案1
如果我理解正确的话,您想知道可以使用类似代码访问哪些其他属性$properties.Item('ComputerNamePhysicalNetBIOS').Value
?如果是这种情况,您可以使用以下代码获取这些属性的列表
$properties | select name