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 TypeBuilder
oluş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
DefineType(String, TypeAttributes, Type, Type[]) |
Belirli bir |
DefineType(String, TypeAttributes, Type, PackingSize, Int32) |
Belirli bir |
DefineType(String, TypeAttributes, Type, PackingSize) |
Belirli bir |
DefineType(String, TypeAttributes) |
Belirli bir |
DefineType(String, TypeAttributes, Type) |
Belirli bir |
DefineType(String, TypeAttributes, Type, Int32) |
Belirli bir |
DefineType(String) |
Bu modülde belirtilen ada sahip bir özel tür için bir |
DefineType(String, TypeAttributes, Type, Type[])
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
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);
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 değerleri 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
değeridir.
Örnekler
Aşağıdaki örnek, kullanarak CreateType
geçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
AssemblyName^ asmname = gcnew 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" );
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.
Not
.NET Framework 2.0 Service Pack 1'den başlayarak, bu üye artık bayrağını ReflectionPermissionFlag.ReflectionEmit gerektirmezReflectionPermission. (Bkz. Yansıma Yaymada Güvenlik Sorunları.) Bu işlevselliği kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.
Şunlara uygulanır
DefineType(String, TypeAttributes, Type, PackingSize, Int32)
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
Belirli bir TypeBuilder
tür adını, özniteliklerini, tanımlı 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);
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 değerleri içeremez.
- attr
- TypeAttributes
Tanımlanan türün öznitelikleri.
- parent
- Type
Tanımlanan türün genişletir türü.
- packingSize
- PackingSize
Türün paketleme 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
değeridir.
Örnekler
Aşağıdaki örnek, kullanarak CreateType
geçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
AssemblyName^ asmname = gcnew 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" );
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.
Not
.NET Framework 2.0 Service Pack 1'den başlayarak, bu üye artık bayrağını ReflectionPermissionFlag.ReflectionEmit gerektirmezReflectionPermission. (Bkz. Yansıma Yaymada Güvenlik Sorunları.) Bu işlevselliği kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.
Şunlara uygulanır
DefineType(String, TypeAttributes, Type, PackingSize)
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
Belirli bir TypeBuilder
tür adını, özniteliklerini, tanımlı 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);
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 değerleri içeremez.
- attr
- TypeAttributes
Tanımlanan türün öznitelikleri.
- parent
- Type
Tanımlanan türün genişletir türü.
- packsize
- PackingSize
Türün paketleme 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
değeridir.
Örnekler
Aşağıdaki örnek, kullanarak CreateType
geçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
AssemblyName^ asmname = gcnew 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" );
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.
Not
.NET Framework 2.0 Service Pack 1'den başlayarak, bu üye artık bayrağını ReflectionPermissionFlag.ReflectionEmit gerektirmezReflectionPermission. (Bkz. Yansıma Yaymada Güvenlik Sorunları.) Bu işlevselliği kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.
Şunlara uygulanır
DefineType(String, TypeAttributes)
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
Belirli bir TypeBuilder
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 değerleri içeremez.
- attr
- TypeAttributes
Tanımlanan 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
değeridir.
Örnekler
Aşağıdaki örnek, kullanarak CreateType
geçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
AssemblyName^ asmname = gcnew 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" );
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.
Not
.NET Framework 2.0 Service Pack 1'den başlayarak, bu üye artık bayrağını ReflectionPermissionFlag.ReflectionEmit gerektirmezReflectionPermission. (Bkz. Yansıma Yaymada Güvenlik Sorunları.) Bu işlevselliği kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.
Şunlara uygulanır
DefineType(String, TypeAttributes, Type)
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
Belirli bir TypeBuilder
tür adını, özniteliklerini ve tanımlı 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);
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 değerleri 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
değeridir.
Örnekler
Aşağıdaki örnek, kullanarak CreateType
geçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
AssemblyName^ asmname = gcnew 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" );
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.
Not
.NET Framework 2.0 Service Pack 1'den başlayarak, bu üye artık bayrağını ReflectionPermissionFlag.ReflectionEmit gerektirmezReflectionPermission. (Bkz. Yansıma Yaymada Güvenlik Sorunları.) Bu işlevselliği kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.
Şunlara uygulanır
DefineType(String, TypeAttributes, Type, Int32)
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
Belirli bir TypeBuilder
tür adını, özniteliklerini, tanımlı 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);
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 değerleri içeremez.
- attr
- TypeAttributes
Tanımlanan 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
değeridir.
Örnekler
Aşağıdaki örnek, kullanarak CreateType
geçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
AssemblyName^ asmname = gcnew 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" );
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.
Not
.NET Framework 2.0 Service Pack 1'den başlayarak, bu üye artık bayrağını ReflectionPermissionFlag.ReflectionEmit gerektirmezReflectionPermission. (Bkz. Yansıma Yaymada Güvenlik Sorunları.) Bu işlevselliği kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.
Şunlara uygulanır
DefineType(String)
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
- Kaynak:
- ModuleBuilder.cs
Bu modülde belirtilen ada sahip bir özel 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ı da dahil olmak üzere türün tam yolu.
name
katıştırılmış null değerleri 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
değeridir.
Örnekler
Aşağıdaki örnek, kullanarak CreateType
geçerli dinamik modülde bir TypeBuilder oluşturur, türü derleyip tamamlar ve derlemeyi kaydeder.
AssemblyName^ asmname = gcnew 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" );
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.
Not
.NET Framework 2.0 Service Pack 1'den başlayarak, bu üye artık bayrağını ReflectionPermissionFlag.ReflectionEmit gerektirmezReflectionPermission. (Bkz. Yansıma Yaymada Güvenlik Sorunları.) Bu işlevselliği kullanmak için uygulamanızın .NET Framework 3.5 veya sonraki bir sürümü hedeflemesi gerekir.