ETS のプロパティ
プロパティは、プロパティとして扱えるメンバーです。 基本的に、式の左側に表示できます。 使用できるプロパティには、エイリアス、コード、メモ、スクリプトの各プロパティがあります。
Alias プロパティ
エイリアス プロパティは 、PSObject オブジェクトに含まれる別のプロパティを参照するプロパティです。 これは主に、参照されるプロパティの名前を変更するために使用されます。 ただし、参照先のプロパティの値を別の型に変換するためにも使用できます。 ETS に関して、この種類のプロパティは常に拡張メンバーであり 、PSAliasProperty クラスによって定義 されます。 クラスには、次のプロパティが含まれています。
- ConversionType プロパティ: 参照先のメンバーの値を変換するために使用される CLR 型。
- IsGettable プロパティ: 参照されるプロパティの値を取得できるかどうかを示します。 このプロパティは、参照先プロパティの IsGettable プロパティを調べることで動的に決定されます。
- IsSettable プロパティ: 参照先のプロパティの値を設定できるかどうかを示します。 このプロパティは、参照先プロパティの IsSettable プロパティを調 べることで動的に決定されます。
- MemberType プロパティ: このプロパティをエイリアス プロパティとして定義する AliasProperty 列挙定数。
- ReferencedMemberName プロパティ: このエイリアスが参照する参照先プロパティの名前。
- TypeNameOfValue プロパティ: 参照先プロパティの値の CLR 型の完全名。
- Value プロパティ: 参照先のプロパティの値。
Code プロパティ
コード プロパティは、CLR 言語で定義されている getter および setter であるプロパティです。 コード プロパティを使用するには、開発者が CLR 言語で プロパティを記述し、コンパイルして、結果のアセンブリを出荷する必要があります。 このアセンブリは、コード プロパティが必要な実行空間で使用できる必要があります。 ETS に関して、この種類のプロパティは常に拡張メンバーであり 、PSCodeProperty クラスによって定義 されます。 クラスには、次のプロパティが含まれています。
- GetterCodeReference プロパティ: コード プロパティの値を取得するために使用されるメソッド。
- IsGettable プロパティ: コード プロパティの値を取得できるかどうか 、SetterCodeReference プロパティ: コード プロパティの値を設定するために使用されるメソッドを示します。
- IsSettable プロパティ: コード プロパティの値を設定できるかどうか 、SetterCodeReference プロパティが null ではないかどうかを示します。
- MemberType プロパティ: このプロパティをコード プロパティとして定義する CodeProperty 列挙定数。
- SetterCodeReference プロパティ: コード プロパティの値を取得するために使用されるメソッド。
- TypeNameOfValue プロパティ: プロパティ取得操作によって返されるコード プロパティ値の CLR 型。
- Value プロパティ: コード プロパティの値。 このプロパティを取得すると、GetterCodeReference プロパティの getter コードが呼び出され、現在の PSObject オブジェクトが渡され、呼び出しによって返された値が返されます。 このプロパティを設定すると 、SetterCodeReference プロパティのセッター コードが呼び出され、現在の PSObject オブジェクトが最初の引数として渡され、値を 2 番目の引数として設定するために使用されるオブジェクトが渡されます。
Note プロパティ
Note プロパティは、名前と値のペアを持つプロパティです。 ETS に関して、この種類のプロパティは常に拡張メンバーであり 、PSNoteProperty クラスによって定義 されます。 クラスには、次のプロパティが含まれています。
- IsGettable プロパティ: note プロパティの値を取得できるかどうかを示します。
- IsSettable プロパティ: note プロパティの値を設定できるかどうかを示します。
- MemberType プロパティ: このプロパティをメモ プロパティとして定義する NoteProperty 列挙定数。
- TypeNameOfValue プロパティ: note プロパティの get 操作によって返されるオブジェクトの完全修飾型名。
- 値: note プロパティの値。
PowerShell プロパティ
PowerShell プロパティは、基本オブジェクトで定義されたプロパティ、またはアダプターを介して使用できるプロパティです。 CLR フィールドと CLR プロパティの両方を参照できます。 ETS に関して、この種類のプロパティは、ベース メンバーまたはアダプター メンバーのいずれかであり 、PSProperty クラスによって定義 されます。 クラスには、次のプロパティが含まれています。
- IsGettable プロパティ: 基本プロパティまたは適合プロパティの値を取得できるかどうかを示します。
- IsSettable プロパティ: 基本プロパティまたは適合プロパティの値を設定できるかどうかを示します。
- MemberType プロパティ: このプロパティを PowerShell プロパティとして定義する Property 列挙定数。
- TypeNameOfValue プロパティ: プロパティ値型の完全修飾名。 たとえば、値が文字列であるプロパティの場合、そのプロパティ値の型は System.String です。
- Value プロパティ: プロパティの値。 その操作をサポートしていないプロパティで get または set 操作が呼び出された場合 、GetValueException または SetValueException 例外がスローされます
PowerShell スクリプト プロパティ
Script プロパティは、getter スクリプトと setter スクリプトを持つプロパティです。 ETS に関して、この種類のプロパティは常に拡張メンバーであり 、PSScriptProperty クラスによって定義 されます。 クラスには、次のプロパティが含まれています。
- GetterScript プロパティ: スクリプト プロパティの値を取得するために使用されるスクリプト。
- IsGettable プロパティ : GetterScript プロパティがスクリプト ブロックを公開するかどうかを示します。
- IsSettable プロパティ : SetterScript プロパティがスクリプト ブロックを公開するかどうかを示します。
- MemberType プロパティ: このプロパティをスクリプト プロパティとして識別する ScriptProperty 列挙定数。
- SetterScript プロパティ: スクリプト プロパティの値を設定するために使用されるスクリプト。
- TypeNameOfValue プロパティ: getter スクリプトによって返されるオブジェクトの完全修飾型名。 この場合 、System.Object は 常に返されます。
- Value プロパティ: スクリプト プロパティの値。 get は getter スクリプトを呼び出し、指定された値を返します。 セットはセッター スクリプトを呼び出します。
フィードバック
フィードバックの送信と表示