ModuleBuilder.DefineType Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Construit un objet TypeBuilder. Pour définir un type valeur, définissez un type qui dérive de ValueType.
Surcharges
| Nom | Description |
|---|---|
| DefineType(String, TypeAttributes, Type, Type[]) |
Construit un |
| DefineType(String, TypeAttributes, Type, PackingSize, Int32) |
Construit un |
| DefineType(String, TypeAttributes, Type, PackingSize) |
Construit un |
| DefineType(String, TypeAttributes) |
Construit un |
| DefineType(String, TypeAttributes, Type) |
Construit un |
| DefineType(String, TypeAttributes, Type, Int32) |
Construit un |
| DefineType(String) |
Construit un |
DefineType(String, TypeAttributes, Type, Type[])
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
Construit un TypeBuilder nom de type, des attributs, le type étendu par le type défini et les interfaces que le type défini implémente.
public:
System::Reflection::Emit::TypeBuilder ^ DefineType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, cli::array <Type ^> ^ interfaces);
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr, Type? parent, Type[]? interfaces);
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr, Type parent, Type[] interfaces);
[System.Runtime.InteropServices.ComVisible(true)]
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr, Type parent, Type[] interfaces);
member this.DefineType : string * System.Reflection.TypeAttributes * Type * Type[] -> System.Reflection.Emit.TypeBuilder
[<System.Runtime.InteropServices.ComVisible(true)>]
member this.DefineType : string * System.Reflection.TypeAttributes * Type * Type[] -> System.Reflection.Emit.TypeBuilder
Public Function DefineType (name As String, attr As TypeAttributes, parent As Type, interfaces As Type()) As TypeBuilder
Paramètres
- name
- String
Chemin d’accès complet du type.
name ne peut pas contenir de valeurs Null incorporées.
- attr
- TypeAttributes
Attributs à associer au type.
- parent
- Type
Type étendu par le type défini.
- interfaces
- Type[]
Liste des interfaces que le type implémente.
Retours
Créé TypeBuilder avec tous les attributs demandés.
- Attributs
Exceptions
Un type portant le nom donné existe dans l’assembly parent de ce module.
- ou -
Les attributs de type imbriqué sont définis sur un type qui n’est pas imbriqué.
name a la valeur null.
Exemples
L’exemple suivant crée un TypeBuilder module dynamique actuel à l’aide CreateTypede , génère et termine le type et enregistre l’assembly.
AssemblyName asmname = new AssemblyName();
asmname.Name = "assemfilename.exe";
AssemblyBuilder asmbuild = System.Threading.Thread.GetDomain().
DefineDynamicAssembly(asmname, AssemblyBuilderAccess.RunAndSave);
ModuleBuilder modbuild = asmbuild.DefineDynamicModule( "modulename",
"assemfilename.exe" );
TypeBuilder typebuild1 = modbuild.DefineType( "typename" );
typebuild1.CreateType();
asmbuild.Save( "assemfilename.exe" );
Dim asmname As New AssemblyName()
asmname.Name = "assemfilename.exe"
Dim asmbuild As AssemblyBuilder = _
System.Threading.Thread.GetDomain().DefineDynamicAssembly(asmname, _
AssemblyBuilderAccess.RunAndSave)
Dim modbuild As ModuleBuilder = _
asmbuild.DefineDynamicModule("modulename", "assemfilename.exe")
Dim typebuild1 As TypeBuilder = modbuild.DefineType("typename")
typebuild1.CreateType()
asmbuild.Save("assemfilename.exe")
Remarques
Les noms de type doivent être uniques au sein d’un assembly. Vous ne pouvez pas avoir deux types portant le même nom dans deux modules différents d’un assembly.
S’applique à
DefineType(String, TypeAttributes, Type, PackingSize, Int32)
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
Construit un TypeBuilder nom de type, des attributs donnés, le type étendu par le type défini, la taille d’emballage du type défini et la taille totale du type défini.
public:
System::Reflection::Emit::TypeBuilder ^ DefineType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, System::Reflection::Emit::PackingSize packingSize, int typesize);
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr, Type? parent, System.Reflection.Emit.PackingSize packingSize, int typesize);
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr, Type parent, System.Reflection.Emit.PackingSize packingSize, int typesize);
member this.DefineType : string * System.Reflection.TypeAttributes * Type * System.Reflection.Emit.PackingSize * int -> System.Reflection.Emit.TypeBuilder
Public Function DefineType (name As String, attr As TypeAttributes, parent As Type, packingSize As PackingSize, typesize As Integer) As TypeBuilder
Paramètres
- name
- String
Chemin d’accès complet du type.
name ne peut pas contenir de valeurs Null incorporées.
- attr
- TypeAttributes
Attributs du type défini.
- parent
- Type
Type étendu par le type défini.
- packingSize
- PackingSize
Taille d’emballage du type.
- typesize
- Int32
Taille totale du type.
Retours
Créé TypeBuilder avec tous les attributs demandés.
Exceptions
Un type portant le nom donné existe dans l’assembly parent de ce module.
- ou -
Les attributs de type imbriqué sont définis sur un type qui n’est pas imbriqué.
name a la valeur null.
Exemples
L’exemple suivant crée un TypeBuilder module dynamique actuel à l’aide CreateTypede , génère et termine le type et enregistre l’assembly.
AssemblyName asmname = new AssemblyName();
asmname.Name = "assemfilename.exe";
AssemblyBuilder asmbuild = System.Threading.Thread.GetDomain().
DefineDynamicAssembly(asmname, AssemblyBuilderAccess.RunAndSave);
ModuleBuilder modbuild = asmbuild.DefineDynamicModule( "modulename",
"assemfilename.exe" );
TypeBuilder typebuild1 = modbuild.DefineType( "typename" );
typebuild1.CreateType();
asmbuild.Save( "assemfilename.exe" );
Dim asmname As New AssemblyName()
asmname.Name = "assemfilename.exe"
Dim asmbuild As AssemblyBuilder = _
System.Threading.Thread.GetDomain().DefineDynamicAssembly(asmname, _
AssemblyBuilderAccess.RunAndSave)
Dim modbuild As ModuleBuilder = _
asmbuild.DefineDynamicModule("modulename", "assemfilename.exe")
Dim typebuild1 As TypeBuilder = modbuild.DefineType("typename")
typebuild1.CreateType()
asmbuild.Save("assemfilename.exe")
Remarques
Les noms de type doivent être uniques au sein d’un assembly. Vous ne pouvez pas avoir deux types portant le même nom dans deux modules différents d’un assembly.
S’applique à
DefineType(String, TypeAttributes, Type, PackingSize)
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
Construit un TypeBuilder nom de type donné, les attributs, le type étendu par le type défini et la taille d’emballage du type.
public:
System::Reflection::Emit::TypeBuilder ^ DefineType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, System::Reflection::Emit::PackingSize packsize);
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr, Type? parent, System.Reflection.Emit.PackingSize packsize);
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr, Type parent, System.Reflection.Emit.PackingSize packsize);
member this.DefineType : string * System.Reflection.TypeAttributes * Type * System.Reflection.Emit.PackingSize -> System.Reflection.Emit.TypeBuilder
Public Function DefineType (name As String, attr As TypeAttributes, parent As Type, packsize As PackingSize) As TypeBuilder
Paramètres
- name
- String
Chemin d’accès complet du type.
name ne peut pas contenir de valeurs Null incorporées.
- attr
- TypeAttributes
Attributs du type défini.
- parent
- Type
Type étendu par le type défini.
- packsize
- PackingSize
Taille d’emballage du type.
Retours
Objet TypeBuilder.
Exceptions
Un type portant le nom donné existe dans l’assembly parent de ce module.
- ou -
Les attributs de type imbriqué sont définis sur un type qui n’est pas imbriqué.
name a la valeur null.
Exemples
L’exemple suivant crée un TypeBuilder module dynamique actuel à l’aide CreateTypede , génère et termine le type et enregistre l’assembly.
AssemblyName asmname = new AssemblyName();
asmname.Name = "assemfilename.exe";
AssemblyBuilder asmbuild = System.Threading.Thread.GetDomain().
DefineDynamicAssembly(asmname, AssemblyBuilderAccess.RunAndSave);
ModuleBuilder modbuild = asmbuild.DefineDynamicModule( "modulename",
"assemfilename.exe" );
TypeBuilder typebuild1 = modbuild.DefineType( "typename" );
typebuild1.CreateType();
asmbuild.Save( "assemfilename.exe" );
Dim asmname As New AssemblyName()
asmname.Name = "assemfilename.exe"
Dim asmbuild As AssemblyBuilder = _
System.Threading.Thread.GetDomain().DefineDynamicAssembly(asmname, _
AssemblyBuilderAccess.RunAndSave)
Dim modbuild As ModuleBuilder = _
asmbuild.DefineDynamicModule("modulename", "assemfilename.exe")
Dim typebuild1 As TypeBuilder = modbuild.DefineType("typename")
typebuild1.CreateType()
asmbuild.Save("assemfilename.exe")
Remarques
Les noms de type doivent être uniques au sein d’un assembly. Vous ne pouvez pas avoir deux types portant le même nom dans deux modules différents d’un assembly.
S’applique à
DefineType(String, TypeAttributes)
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
Construit un TypeBuilder nom de type donné et les attributs de type.
public:
System::Reflection::Emit::TypeBuilder ^ DefineType(System::String ^ name, System::Reflection::TypeAttributes attr);
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr);
member this.DefineType : string * System.Reflection.TypeAttributes -> System.Reflection.Emit.TypeBuilder
Public Function DefineType (name As String, attr As TypeAttributes) As TypeBuilder
Paramètres
- name
- String
Chemin d’accès complet du type.
name ne peut pas contenir de valeurs Null incorporées.
- attr
- TypeAttributes
Attributs du type défini.
Retours
Créé TypeBuilder avec tous les attributs demandés.
Exceptions
Un type portant le nom donné existe dans l’assembly parent de ce module.
- ou -
Les attributs de type imbriqué sont définis sur un type qui n’est pas imbriqué.
name a la valeur null.
Exemples
L’exemple suivant crée un TypeBuilder module dynamique actuel à l’aide CreateTypede , génère et termine le type et enregistre l’assembly.
AssemblyName asmname = new AssemblyName();
asmname.Name = "assemfilename.exe";
AssemblyBuilder asmbuild = System.Threading.Thread.GetDomain().
DefineDynamicAssembly(asmname, AssemblyBuilderAccess.RunAndSave);
ModuleBuilder modbuild = asmbuild.DefineDynamicModule( "modulename",
"assemfilename.exe" );
TypeBuilder typebuild1 = modbuild.DefineType( "typename" );
typebuild1.CreateType();
asmbuild.Save( "assemfilename.exe" );
Dim asmname As New AssemblyName()
asmname.Name = "assemfilename.exe"
Dim asmbuild As AssemblyBuilder = _
System.Threading.Thread.GetDomain().DefineDynamicAssembly(asmname, _
AssemblyBuilderAccess.RunAndSave)
Dim modbuild As ModuleBuilder = _
asmbuild.DefineDynamicModule("modulename", "assemfilename.exe")
Dim typebuild1 As TypeBuilder = modbuild.DefineType("typename")
typebuild1.CreateType()
asmbuild.Save("assemfilename.exe")
Remarques
Les noms de type doivent être uniques au sein d’un assembly. Vous ne pouvez pas avoir deux types portant le même nom dans deux modules différents d’un assembly.
S’applique à
DefineType(String, TypeAttributes, Type)
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
Construit un TypeBuilder nom de type donné, ses attributs et le type étendu par le type défini.
public:
System::Reflection::Emit::TypeBuilder ^ DefineType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent);
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr, Type? parent);
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr, Type parent);
member this.DefineType : string * System.Reflection.TypeAttributes * Type -> System.Reflection.Emit.TypeBuilder
Public Function DefineType (name As String, attr As TypeAttributes, parent As Type) As TypeBuilder
Paramètres
- name
- String
Chemin d’accès complet du type.
name ne peut pas contenir de valeurs Null incorporées.
- attr
- TypeAttributes
Attribut à associer au type.
- parent
- Type
Type étendu par le type défini.
Retours
Créé TypeBuilder avec tous les attributs demandés.
Exceptions
Un type portant le nom donné existe dans l’assembly parent de ce module.
- ou -
Les attributs de type imbriqué sont définis sur un type qui n’est pas imbriqué.
name a la valeur null.
Exemples
L’exemple suivant crée un TypeBuilder module dynamique actuel à l’aide CreateTypede , génère et termine le type et enregistre l’assembly.
AssemblyName asmname = new AssemblyName();
asmname.Name = "assemfilename.exe";
AssemblyBuilder asmbuild = System.Threading.Thread.GetDomain().
DefineDynamicAssembly(asmname, AssemblyBuilderAccess.RunAndSave);
ModuleBuilder modbuild = asmbuild.DefineDynamicModule( "modulename",
"assemfilename.exe" );
TypeBuilder typebuild1 = modbuild.DefineType( "typename" );
typebuild1.CreateType();
asmbuild.Save( "assemfilename.exe" );
Dim asmname As New AssemblyName()
asmname.Name = "assemfilename.exe"
Dim asmbuild As AssemblyBuilder = _
System.Threading.Thread.GetDomain().DefineDynamicAssembly(asmname, _
AssemblyBuilderAccess.RunAndSave)
Dim modbuild As ModuleBuilder = _
asmbuild.DefineDynamicModule("modulename", "assemfilename.exe")
Dim typebuild1 As TypeBuilder = modbuild.DefineType("typename")
typebuild1.CreateType()
asmbuild.Save("assemfilename.exe")
Remarques
Les noms de type doivent être uniques au sein d’un assembly. Vous ne pouvez pas avoir deux types portant le même nom dans deux modules différents d’un assembly.
S’applique à
DefineType(String, TypeAttributes, Type, Int32)
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
Construit un TypeBuilder nom de type donné, les attributs, le type étendu par le type défini et la taille totale du type.
public:
System::Reflection::Emit::TypeBuilder ^ DefineType(System::String ^ name, System::Reflection::TypeAttributes attr, Type ^ parent, int typesize);
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr, Type? parent, int typesize);
public System.Reflection.Emit.TypeBuilder DefineType(string name, System.Reflection.TypeAttributes attr, Type parent, int typesize);
member this.DefineType : string * System.Reflection.TypeAttributes * Type * int -> System.Reflection.Emit.TypeBuilder
Public Function DefineType (name As String, attr As TypeAttributes, parent As Type, typesize As Integer) As TypeBuilder
Paramètres
- name
- String
Chemin d’accès complet du type.
name ne peut pas contenir de valeurs Null incorporées.
- attr
- TypeAttributes
Attributs du type défini.
- parent
- Type
Type étendu par le type défini.
- typesize
- Int32
Taille totale du type.
Retours
Objet TypeBuilder.
Exceptions
Un type portant le nom donné existe dans l’assembly parent de ce module.
- ou -
Les attributs de type imbriqué sont définis sur un type qui n’est pas imbriqué.
name a la valeur null.
Exemples
L’exemple suivant crée un TypeBuilder module dynamique actuel à l’aide CreateTypede , génère et termine le type et enregistre l’assembly.
AssemblyName asmname = new AssemblyName();
asmname.Name = "assemfilename.exe";
AssemblyBuilder asmbuild = System.Threading.Thread.GetDomain().
DefineDynamicAssembly(asmname, AssemblyBuilderAccess.RunAndSave);
ModuleBuilder modbuild = asmbuild.DefineDynamicModule( "modulename",
"assemfilename.exe" );
TypeBuilder typebuild1 = modbuild.DefineType( "typename" );
typebuild1.CreateType();
asmbuild.Save( "assemfilename.exe" );
Dim asmname As New AssemblyName()
asmname.Name = "assemfilename.exe"
Dim asmbuild As AssemblyBuilder = _
System.Threading.Thread.GetDomain().DefineDynamicAssembly(asmname, _
AssemblyBuilderAccess.RunAndSave)
Dim modbuild As ModuleBuilder = _
asmbuild.DefineDynamicModule("modulename", "assemfilename.exe")
Dim typebuild1 As TypeBuilder = modbuild.DefineType("typename")
typebuild1.CreateType()
asmbuild.Save("assemfilename.exe")
Remarques
Les noms de type doivent être uniques au sein d’un assembly. Il est interdit d’avoir deux types portant le même nom dans deux modules différents d’un assembly.
S’applique à
DefineType(String)
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
- Source:
- ModuleBuilder.cs
Construit un TypeBuilder type privé avec le nom spécifié dans ce module.
public:
System::Reflection::Emit::TypeBuilder ^ DefineType(System::String ^ name);
public System.Reflection.Emit.TypeBuilder DefineType(string name);
member this.DefineType : string -> System.Reflection.Emit.TypeBuilder
Public Function DefineType (name As String) As TypeBuilder
Paramètres
- name
- String
Chemin d’accès complet du type, y compris l’espace de noms.
name ne peut pas contenir de valeurs Null incorporées.
Retours
Type privé portant le nom spécifié.
Exceptions
Un type portant le nom donné existe dans l’assembly parent de ce module.
- ou -
Les attributs de type imbriqué sont définis sur un type qui n’est pas imbriqué.
name a la valeur null.
Exemples
L’exemple suivant crée un TypeBuilder module dynamique actuel à l’aide CreateTypede , génère et termine le type et enregistre l’assembly.
AssemblyName asmname = new AssemblyName();
asmname.Name = "assemfilename.exe";
AssemblyBuilder asmbuild = System.Threading.Thread.GetDomain().
DefineDynamicAssembly(asmname, AssemblyBuilderAccess.RunAndSave);
ModuleBuilder modbuild = asmbuild.DefineDynamicModule( "modulename",
"assemfilename.exe" );
TypeBuilder typebuild1 = modbuild.DefineType( "typename" );
typebuild1.CreateType();
asmbuild.Save( "assemfilename.exe" );
Dim asmname As New AssemblyName()
asmname.Name = "assemfilename.exe"
Dim asmbuild As AssemblyBuilder = _
System.Threading.Thread.GetDomain().DefineDynamicAssembly(asmname, _
AssemblyBuilderAccess.RunAndSave)
Dim modbuild As ModuleBuilder = _
asmbuild.DefineDynamicModule("modulename", "assemfilename.exe")
Dim typebuild1 As TypeBuilder = modbuild.DefineType("typename")
typebuild1.CreateType()
asmbuild.Save("assemfilename.exe")
Remarques
Les noms de type doivent être uniques au sein d’un assembly. Vous ne pouvez pas avoir deux types portant le même nom dans deux modules différents d’un assembly.