2017-08-24 18 views
0

公開タイプのメンバー、たとえばSystem.Nullable<T>を取得するにはどうすればよいですか?Get-Member for System.NullableType <T>

> [System.Nullable[T]] | Get-Member 

をしかし、それは、次のエラーが発生:

は、私が試した

Unable to find type [T]. 
At line:1 char:1 
+ [System.Nullable[T]] | Get-Member 
+ ~~~~~~~~~~~~~~~~~~~~ 
    + CategoryInfo   : InvalidOperation: (T:TypeName) [], RuntimeException 
    + FullyQualifiedErrorId : TypeNotFound 

私はクローズドタイプNullable<int>のためにそれを取得しようとした場合には、例えば、私は、任意の表示されませんタイプのメソッド。代わりに、それは私にTypeName: System.RuntimeTypeのメンバーを示しています。

> [System.Nullable[int]] | Get-Member 

System.DateTimeを試しても同じことが起こります。または、参照タイプがSystem.Stringの場合

Get-Memberはタイプ名ではなくオブジェクトを入力と想定していると想定しています。そして、それはSystem.RuntimeTypeのオブジェクトとして私が指定した型名を考慮する。

1。タイプのメンバーを確認するにはどうすればよいですか?

  1. また、そこに含まれる静的メンバーも確認したいと思います。ですから、Get-Memberをオブジェクトインスタンスに呼び出すと、次のようになります。

    4 | Get-Member

静的メンバーも表示したいと思います。

[Nullable`1] 

第二の問題は、タイプからメンバーを取得しているコミュニティのモジュールなしで少し鈍角です:

+0

'[System.Nullable] | Get-Member -Force; [System.Nullable] | Get-Member-Static'? –

+0

@AnsgarWiechersありがとうございます。その '-Static'スイッチは私に静的メンバーを与えます。型名が与えられた型のメンバーを与え、型のオブジェクトが与えられていないのは可能ですか? –

答えて

1

まず、あなたがこの構文を使用する必要がある型パラメータなしでジェネリック型を解決します。あなたはこれを行うことができます

[Nullable`1].DeclaredMembers | Format-Table Name, MemberType 

Format-Tableのプロパティを調整したいと思うでしょう。

コミュニティモジュールをReflectionまたはPokeのいずれかにチェックアウトすると、コミュニティモジュールがやや簡単になります。

関連する問題