ModuleBuilder.DefineType Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir TypeBuilderoluşturur. Bir değer türü tanımlamak için, türünden ValueTypetüretilen bir tür tanımlayın.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| DefineType(String, TypeAttributes, Type, PackingSize, Int32) |
|
| DefineType(String, TypeAttributes, Type, Type[]) |
Belirli bir |
| DefineType(String, TypeAttributes, Type, Int32) |
Belirli bir |
| DefineType(String, TypeAttributes, Type, PackingSize) |
|
| DefineType(String, TypeAttributes) |
|
| DefineType(String) |
Bu modülde belirtilen ada sahip özel bir tür için bir |
| DefineType(String, TypeAttributes, Type) |
Belirli bir |
DefineType(String, TypeAttributes, Type, PackingSize, Int32)
TypeBuilder Verilen tür adını, özniteliklerini, tanımlanan türün genişletilen türünü, tanımlı türün paketleme boyutunu ve tanımlı türün toplam boyutunu oluşturur.
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);
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
Parametreler
- name
- String
Türün tam yolu.
name katıştırılmış null içeremez.
- attr
- TypeAttributes
Tanımlı türün öznitelikleri.
- parent
- Type
Tanımlanan türün genişletir türü.
- packingSize
- PackingSize
Türün ambalaj boyutu.
- typesize
- Int32
Türün toplam boyutu.
Döndürülenler
TypeBuilder İstenen tüm özniteliklerle oluşturulan.
Özel durumlar
Bu modülün üst derlemesinde verilen ada sahip bir tür var.
-veya-
İç içe türü öznitelikleri iç içe olmayan bir türe ayarlanır.
name, null'e eşittir.
Örnekler
Aşağıdaki örnek, kullanarak CreateTypegeçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
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")
Açıklamalar
Tür adları bir derleme içinde benzersiz olmalıdır. Bir derlemenin iki farklı modülünde aynı ada sahip iki türe sahip olamazsınız.
Şunlara uygulanır
DefineType(String, TypeAttributes, Type, Type[])
Belirli bir TypeBuilder tür adını, özniteliklerini, tanımlı türün genişletilen türünü ve tanımlı türün uyguladığı arabirimleri oluşturur.
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);
[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
Parametreler
- name
- String
Türün tam yolu.
name katıştırılmış null içeremez.
- attr
- TypeAttributes
Türüyle ilişkilendirilecek öznitelikler.
- parent
- Type
Tanımlanan türün genişletir türü.
- interfaces
- Type[]
Türün uyguladığı arabirimlerin listesi.
Döndürülenler
TypeBuilder İstenen tüm özniteliklerle oluşturulan.
- Öznitelikler
Özel durumlar
Bu modülün üst derlemesinde verilen ada sahip bir tür var.
-veya-
İç içe türü öznitelikleri iç içe olmayan bir türe ayarlanır.
name, null'e eşittir.
Örnekler
Aşağıdaki örnek, kullanarak CreateTypegeçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
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")
Açıklamalar
Tür adları bir derleme içinde benzersiz olmalıdır. Bir derlemenin iki farklı modülünde aynı ada sahip iki türe sahip olamazsınız.
Şunlara uygulanır
DefineType(String, TypeAttributes, Type, Int32)
Belirli bir TypeBuilder tür adını, özniteliklerini, tanımlanan türün genişletilen türünü ve türün toplam boyutunu oluşturur.
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);
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
Parametreler
- name
- String
Türün tam yolu.
name katıştırılmış null içeremez.
- attr
- TypeAttributes
Tanımlı türün öznitelikleri.
- parent
- Type
Tanımlanan türün genişletir türü.
- typesize
- Int32
Türün toplam boyutu.
Döndürülenler
Bir TypeBuilder nesnesi.
Özel durumlar
Bu modülün üst derlemesinde verilen ada sahip bir tür var.
-veya-
İç içe türü öznitelikleri iç içe olmayan bir türe ayarlanır.
name, null'e eşittir.
Örnekler
Aşağıdaki örnek, kullanarak CreateTypegeçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
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")
Açıklamalar
Tür adları bir derleme içinde benzersiz olmalıdır. Bir derlemenin iki farklı modülünde aynı ada sahip iki tür olması yasaktır.
Şunlara uygulanır
DefineType(String, TypeAttributes, Type, PackingSize)
TypeBuilder Verilen tür adını, özniteliklerini, tanımlanan türün genişletilen türünü ve türün paketleme boyutunu oluşturur.
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);
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
Parametreler
- name
- String
Türün tam yolu.
name katıştırılmış null içeremez.
- attr
- TypeAttributes
Tanımlı türün öznitelikleri.
- parent
- Type
Tanımlanan türün genişletir türü.
- packsize
- PackingSize
Türün ambalaj boyutu.
Döndürülenler
Bir TypeBuilder nesnesi.
Özel durumlar
Bu modülün üst derlemesinde verilen ada sahip bir tür var.
-veya-
İç içe türü öznitelikleri iç içe olmayan bir türe ayarlanır.
name, null'e eşittir.
Örnekler
Aşağıdaki örnek, kullanarak CreateTypegeçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
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")
Açıklamalar
Tür adları bir derleme içinde benzersiz olmalıdır. Bir derlemenin iki farklı modülünde aynı ada sahip iki türe sahip olamazsınız.
Şunlara uygulanır
DefineType(String, TypeAttributes)
TypeBuilder Verilen tür adını ve tür özniteliklerini oluşturur.
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
Parametreler
- name
- String
Türün tam yolu.
name katıştırılmış null içeremez.
- attr
- TypeAttributes
Tanımlı türün öznitelikleri.
Döndürülenler
TypeBuilder İstenen tüm özniteliklerle oluşturulan.
Özel durumlar
Bu modülün üst derlemesinde verilen ada sahip bir tür var.
-veya-
İç içe türü öznitelikleri iç içe olmayan bir türe ayarlanır.
name, null'e eşittir.
Örnekler
Aşağıdaki örnek, kullanarak CreateTypegeçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
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")
Açıklamalar
Tür adları bir derleme içinde benzersiz olmalıdır. Bir derlemenin iki farklı modülünde aynı ada sahip iki türe sahip olamazsınız.
Şunlara uygulanır
DefineType(String)
Bu modülde belirtilen ada sahip özel bir tür için bir TypeBuilder oluşturur.
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
Parametreler
- name
- String
Ad alanı dahil olmak üzere türün tam yolu.
name katıştırılmış null içeremez.
Döndürülenler
Belirtilen ada sahip özel bir tür.
Özel durumlar
Bu modülün üst derlemesinde verilen ada sahip bir tür var.
-veya-
İç içe türü öznitelikleri iç içe olmayan bir türe ayarlanır.
name, null'e eşittir.
Örnekler
Aşağıdaki örnek, kullanarak CreateTypegeçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
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")
Açıklamalar
Tür adları bir derleme içinde benzersiz olmalıdır. Bir derlemenin iki farklı modülünde aynı ada sahip iki türe sahip olamazsınız.
Şunlara uygulanır
DefineType(String, TypeAttributes, Type)
Belirli bir TypeBuilder tür adını, özniteliklerini ve tanımlanan türün genişletilen türünü oluşturur.
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);
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
Parametreler
- name
- String
Türün tam yolu.
name katıştırılmış null içeremez.
- attr
- TypeAttributes
Türüyle ilişkilendirilecek öznitelik.
- parent
- Type
Tanımlanan türün genişletir türü.
Döndürülenler
TypeBuilder İstenen tüm özniteliklerle oluşturulan.
Özel durumlar
Bu modülün üst derlemesinde verilen ada sahip bir tür var.
-veya-
İç içe türü öznitelikleri iç içe olmayan bir türe ayarlanır.
name, null'e eşittir.
Örnekler
Aşağıdaki örnek, kullanarak CreateTypegeçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
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")
Açıklamalar
Tür adları bir derleme içinde benzersiz olmalıdır. Bir derlemenin iki farklı modülünde aynı ada sahip iki türe sahip olamazsınız.