MemberInfo.Module MemberInfo.Module MemberInfo.Module MemberInfo.Module Property

定義

現在の MemberInfo によって表されるメンバーを宣言する型が定義されているモジュールを取得します。Gets the module in which the type that declares the member represented by the current MemberInfo is defined.

public:
 virtual property System::Reflection::Module ^ Module { System::Reflection::Module ^ get(); };
public virtual System.Reflection.Module Module { get; }
member this.Module : System.Reflection.Module
Public Overridable ReadOnly Property Module As Module

プロパティ値

現在の Module によって表されるメンバーを宣言する型が定義されている MemberInfoThe Module in which the type that declares the member represented by the current MemberInfo is defined.

例外

このメソッドは実装されていません。This method is not implemented.

を継承Objectし、をオーバーライドObject.ToStringするクラスを宣言するコード例を次に示します。The following code example declares a class that inherits Object and overrides Object.ToString. この例でMethodInfoは、クラスのToStringメソッドと継承GetHashCodeされたメソッドのオブジェクトを取得し、2つのメソッドが宣言されているモジュールの名前を表示します。The example obtains MethodInfo objects for the class's ToString method and for the inherited GetHashCode method, and displays the names of the modules in which the two methods are declared.

using namespace System;
using namespace System::Reflection;

public ref class Test
{
public:
    virtual String^ ToString() override
    {
        return "An instance of class Test!";
    }
};

int main()
{
    Test^ target = gcnew Test();
    MethodInfo^ toStringInfo = target->GetType()->GetMethod("ToString");
    Console::WriteLine("{0} is defined in {1}", toStringInfo->Name,
        toStringInfo->Module->Name);

    MethodInfo^ getHashCodeInfo = target->GetType()->GetMethod("GetHashCode");
    Console::WriteLine("{0} is defined in {1}", getHashCodeInfo->Name,
        getHashCodeInfo->Module->Name);
}

/*
* This example produces the following console output:
*
* ToString is defined in source.exe
* GetHashCode is defined in mscorlib.dll
*/
using System;
using System.Reflection;

public class Test
{
    public override string ToString()
    {
        return "An instance of class Test!";
    }
}

public class Example
{
    public static void Main()
    {
        Test t = new Test();
        MethodInfo mi = t.GetType().GetMethod("ToString");
        Console.WriteLine("{0} is defined in {1}", mi.Name, mi.Module.Name);

        mi = t.GetType().GetMethod("GetHashCode");
        Console.WriteLine("{0} is defined in {1}", mi.Name, mi.Module.Name);
    }
}

/* This example produces code similar to the following:

  ToString is defined in source.exe
  GetHashCode is defined in mscorlib.dll
 */
Imports System.Reflection

Public Class Test
    Public Overrides Function ToString() As String
        Return "An instance of class Test!"
    End Function
End Class

Public Class Example
    Public Shared Sub Main()
        Dim t As New Test()
        Dim mi As MethodInfo = t.GetType().GetMethod("ToString")
        Console.WriteLine(mi.Name & " is defined in " & mi.Module.Name)

        mi = t.GetType().GetMethod("GetHashCode")
        Console.WriteLine(mi.Name & " is defined in " & mi.Module.Name)
    End Sub
End Class

' This example produces code similar to the following:
'
'ToString is defined in source.exe
'GetHashCode is defined in mscorlib.dll

注釈

このプロパティは便宜上提供されています。This property is provided as a convenience. これは、 DeclaringTypeプロパティを使用して、メソッドが宣言されている型を取得し、結果Moduleとして生成Typeされるオブジェクトのプロパティを呼び出すことと同じです。It is equivalent to using the DeclaringType property to get the type in which the method is declared, and then calling the Module property of the resulting Type object.

適用対象

こちらもご覧ください