gpt4 book ai didi

c# - Powershell:GetType() 打印所有类型信息,但缺少很多?

转载 作者:行者123 更新时间:2023-11-30 16:53:51 25 4
gpt4 key购买 nike

我尝试使用 GetType() 打印所有类型信息,但似乎缺少很多信息?我在 PS 4.0 中有这样的输入。(见下文)

我尝试使用“GetType().GetMethods()”列出所有方法。但是我没有看到

"GetMethods"

本身在结果列表中。我还使用“GetProperties()”来列出所有属性,但似乎还有更多属性,例如

IsCOMObject

未在结果中列出。如果我使用 Visual Studio+C# 编程,我可以看到列出更多的属性。为什么 powershell 缺少它们?


请参阅下面的输出:

PS C:\Users\engineer> $PSVersionTable
Name Value
---- -----
PSVersion 4.0
WSManStackVersion 3.0
SerializationVersion https://urldefense.proofpoint.com/v2/url?u=http-3A__1.1.0.1&d=BQIGaQ&c=uGuXJ43KPkPWEl2imVFDmZQlhQUET7pVRA2PDIOxgqw&r=mCXkWZTsMJTTBmlJTS1MIA&m=Ygifer7R65h35BWXXpiU4do9wt2Uao4rSLEgO9vuPHk&s=vwVGdMLhksoC-RbOJWgJ4jNhk1F5c7TrApW_pekpb9M&e=
CLRVersion 4.0.30319.18444
BuildVersion 6.3.9600.16406
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0}
PSRemotingProtocolVersion 2.2

PS C:\Users\engineer> $a=${}
PS C:\Users\engineer> $a.GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True Hashtable System.Object
PS C:\Users\engineer> $a.GetType().GetMethods().Name|Sort
Add
Clear
Clone
Contains
ContainsKey
ContainsValue
CopyTo
Equals
get_Count
get_IsFixedSize
get_IsReadOnly
get_IsSynchronized
get_Item
get_Keys
get_SyncRoot
get_Values
GetEnumerator
GetHashCode
GetObjectData
GetType
OnDeserialization
Remove
set_Item
Synchronized
ToString

PS C:\Users\engineer> $a.GetType().GetProperties().Name|Sort
Count
IsFixedSize
IsReadOnly
IsSynchronized
Item
Keys
SyncRoot
Values

PS C:\Users\engineer> $a.GetType().IsCOMObject
False

PS C:\Users\engineer>

最佳答案

$a 是一个 HashTable,您的表达式正在获取 HashTable 类的所有方法。 GetMethods 没有出现在列表中,因为它不是 HashTable 类的方法,而是 Type 类的方法。 IsCOMObject 没有出现在列表中,因为它不是 HashTable 类的属性;它是类 Type 的一个属性。

如果您想查看可以使用 Type 对象执行的所有操作,请执行类似 (C#) 的操作:

typeof(Type).GetMethods()

关于c# - Powershell:GetType() 打印所有类型信息,但缺少很多?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30992343/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com