次の方法で共有


オブジェクトの既定のメソッドを定義する

オブジェクトを拡張.NET Framework、コード メソッドとスクリプト メソッドを オブジェクトに追加できます。 これらのメソッドを定義するために使用される XML については、次のセクションで説明します。

注意

次のセクションの例は、インストール ディレクトリ ( ) の Types.ps1xml Windows PowerShellファイルに含まれます $PSHOME 。 詳細については 、「About Types.ps1xml 」を参照してください

コード メソッド

コード メソッドは、オブジェクトの静的メソッドを.NET Frameworkします。

次の例では 、ToString メソッドがメソッドに追加 System.Xml。XmlNode 型。 PSCodeMethod要素は、拡張メソッドをコード メソッドとして定義します。 Name 要素 は、拡張メソッドの名前を指定します。 また 、CodeReference 要素 は静的メソッドを指定します。 PSCodeMethod 要素を PSMemberSets要素のメンバーに追加できます。

<Type>
  <Name>System.Xml.XmlNode</Name>
  <Members>
    <CodeMethod>
      <Name>ToString</Name>
      <CodeReference>
        <TypeName>Microsoft.PowerShell.ToStringCodeMethods</TypeName>
        <MethodName>XmlNode</MethodName>
      </CodeReference>
    </CodeMethod>
  </Members>
</Type>

スクリプト メソッド

スクリプト メソッドは、値がスクリプトの出力であるメソッドを定義します。 次の例では 、ConvertToDateTime メソッドが System.Management.ManagementObject 型に追加 されています。 PSScriptMethod要素は、拡張メソッドをスクリプト メソッドとして定義します。 Name 要素 は、拡張メソッドの名前を指定します。 また 、Script 要素 は、メソッド値を生成するスクリプトを指定します。 PSScriptMethod 要素を PSMemberSets要素のメンバーに追加できます。

<Type>
  <Name>System.Management.ManagementObject</Name>
  <Members>
    <ScriptMethod>
      <Name>ConvertToDateTime</Name>
      <Script>
        [System.Management.ManagementDateTimeConverter]::ToDateTime($args[0])
      </Script>
    </ScriptMethod>
  </Members>
</Type>

関連項目

Windows PowerShell コマンドレットの記述