次の方法で共有


ConstructorBuilder.Name プロパティ

このコンストラクタの名前を取得します。

Overrides Public ReadOnly Property Name As String
[C#]
public override string Name {get;}
[C++]
public: __property String* get_Name();
[JScript]
public override function get Name() : String;

プロパティ値

このコンストラクタの名前を返します。

解説

Name の使用方法については、次のコード例を参照してください。

 
Dim myMethodBuilder As MethodBuilder = Nothing
Dim myCurrentDomain As AppDomain = AppDomain.CurrentDomain
' Create assembly in current CurrentDomain.
Dim myAssemblyName As New AssemblyName()
myAssemblyName.Name = "TempAssembly"
' Create a dynamic assembly.
myAssemblyBuilder = _ 
      myCurrentDomain.DefineDynamicAssembly(myAssemblyName, AssemblyBuilderAccess.Run)
' Create a dynamic module in the assembly.
myModuleBuilder = myAssemblyBuilder.DefineDynamicModule("TempModule")
Dim myFieldInfo As FieldInfo = _ 
    myModuleBuilder.DefineUninitializedData("myField", 2, FieldAttributes.Public)
' Create a type in the module.
Dim myTypeBuilder As TypeBuilder = _ 
    myModuleBuilder.DefineType("TempClass", TypeAttributes.Public)
Dim myGreetingField As FieldBuilder = _ 
    myTypeBuilder.DefineField("Greeting", GetType(String), FieldAttributes.Public)
Dim myConstructorArgs As Type() = {GetType(String)}
' Define a constructor of the dynamic class.
Dim myConstructor As ConstructorBuilder = _ 
    myTypeBuilder.DefineConstructor(MethodAttributes.Public, CallingConventions.Standard, _ 
                                    myConstructorArgs)
' Display the name of the constructor.
Console.WriteLine("The constructor name is  : " + myConstructor.Name)
' Display the 'Type' object from which this object was obtained.
Console.WriteLine("The reflected type  is  : " + myConstructor.ReflectedType.ToString())
' Display the signature of the field.
Console.WriteLine(myConstructor.Signature)
' Display the constructor builder instance as a string.
Console.WriteLine(myConstructor.ToString())

[C#] 
MethodBuilder myMethodBuilder = null;
AppDomain myCurrentDomain = AppDomain.CurrentDomain;
// Create assembly in current CurrentDomain.
AssemblyName myAssemblyName = new AssemblyName();
myAssemblyName.Name = "TempAssembly";
// Create a dynamic assembly.
myAssemblyBuilder = myCurrentDomain.DefineDynamicAssembly
         (myAssemblyName, AssemblyBuilderAccess.Run);
// Create a dynamic module in the assembly.
myModuleBuilder = myAssemblyBuilder.DefineDynamicModule("TempModule");
FieldInfo myFieldInfo =
   myModuleBuilder.DefineUninitializedData("myField", 2, FieldAttributes.Public);
// Create a type in the module.
TypeBuilder myTypeBuilder = myModuleBuilder.DefineType("TempClass",TypeAttributes.Public);
FieldBuilder myGreetingField = myTypeBuilder.DefineField("Greeting", 
                                    typeof(String), FieldAttributes.Public);
Type[] myConstructorArgs = { typeof(String) };
// Define a constructor of the dynamic class.
ConstructorBuilder myConstructor = myTypeBuilder.DefineConstructor(
MethodAttributes.Public, CallingConventions.Standard, myConstructorArgs);
// Display the name of the constructor.
Console.WriteLine("The constructor name is  : "+ myConstructor.Name);
// Display the 'Type' object from which this object was obtained.
Console.WriteLine("The reflected type  is  : "+ myConstructor.ReflectedType);
// Display the signature of the field.
Console.WriteLine(myConstructor.Signature);
// Display the constructor builder instance as a string.
Console.WriteLine(myConstructor.ToString());

[C++] 
MethodBuilder* myMethodBuilder = 0;
AppDomain* myCurrentDomain = AppDomain::CurrentDomain;
// Create assembly in current CurrentDomain.
AssemblyName* myAssemblyName = new AssemblyName();
myAssemblyName->Name = S"TempAssembly";
// Create a dynamic assembly.
myAssemblyBuilder = myCurrentDomain->DefineDynamicAssembly
   (myAssemblyName, AssemblyBuilderAccess::Run);
// Create a dynamic module in the assembly.
myModuleBuilder = myAssemblyBuilder->DefineDynamicModule(S"TempModule");
FieldInfo* myFieldInfo =
   myModuleBuilder->DefineUninitializedData(S"myField", 2, FieldAttributes::Public);
// Create a type in the module.
TypeBuilder* myTypeBuilder = myModuleBuilder->DefineType(S"TempClass",TypeAttributes::Public);
FieldBuilder* myGreetingField = myTypeBuilder->DefineField(S"Greeting", 
   __typeof(String), FieldAttributes::Public);
Type* myConstructorArgs[] = { __typeof(String) };
// Define a constructor of the dynamic class.
ConstructorBuilder* myConstructor = myTypeBuilder->DefineConstructor(
   MethodAttributes::Public, CallingConventions::Standard, myConstructorArgs);
// Display the name of the constructor.
Console::WriteLine(S"The constructor name is  : {0}", myConstructor->Name);
// Display the 'Type' object from which this object was obtained.
Console::WriteLine(S"The reflected type  is  : {0}", myConstructor->ReflectedType);
// Display the signature of the field.
Console::WriteLine(myConstructor->Signature);
// Display the constructor builder instance as a string.
Console::WriteLine(myConstructor);

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

ConstructorBuilder クラス | ConstructorBuilder メンバ | System.Reflection.Emit 名前空間