FieldBuilder Sınıf
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 alanı tanımlar ve temsil eder. Bu sınıf devralınamaz.
public ref class FieldBuilder sealed : System::Reflection::FieldInfo
public ref class FieldBuilder abstract : System::Reflection::FieldInfo
public ref class FieldBuilder sealed : System::Reflection::FieldInfo, System::Runtime::InteropServices::_FieldBuilder
public sealed class FieldBuilder : System.Reflection.FieldInfo
public abstract class FieldBuilder : System.Reflection.FieldInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
public sealed class FieldBuilder : System.Reflection.FieldInfo, System.Runtime.InteropServices._FieldBuilder
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class FieldBuilder : System.Reflection.FieldInfo, System.Runtime.InteropServices._FieldBuilder
type FieldBuilder = class
inherit FieldInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
type FieldBuilder = class
inherit FieldInfo
interface _FieldBuilder
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FieldBuilder = class
inherit FieldInfo
interface _FieldBuilder
Public NotInheritable Class FieldBuilder
Inherits FieldInfo
Public MustInherit Class FieldBuilder
Inherits FieldInfo
Public NotInheritable Class FieldBuilder
Inherits FieldInfo
Implements _FieldBuilder
- Devralma
- Öznitelikler
- Uygulamalar
Örnekler
Aşağıdaki örnekte sınıfının kullanımı gösterilmektedir FieldBuilder
.
using System;
using System.Reflection;
using System.Reflection.Emit;
public class FieldBuilder_Sample
{
private static Type? CreateType()
{
// Create an assembly.
AssemblyName assemName = new AssemblyName();
assemName.Name = "DynamicAssembly";
AssemblyBuilder assemBuilder =
AssemblyBuilder.DefineDynamicAssembly(assemName, AssemblyBuilderAccess.Run);
// Create a dynamic module in Dynamic Assembly.
ModuleBuilder modBuilder = assemBuilder.DefineDynamicModule("DynamicModule");
// Define a public class named "DynamicClass" in the assembly.
TypeBuilder typBuilder = modBuilder.DefineType("DynamicClass", TypeAttributes.Public);
// Define a private String field named "DynamicField" in the type.
FieldBuilder fldBuilder = typBuilder.DefineField("DynamicField",
typeof(string), FieldAttributes.Private | FieldAttributes.Static);
// Create the constructor.
Type[] constructorArgs = { typeof(String) };
ConstructorBuilder constructor = typBuilder.DefineConstructor(
MethodAttributes.Public, CallingConventions.Standard, constructorArgs);
ILGenerator constructorIL = constructor.GetILGenerator();
constructorIL.Emit(OpCodes.Ldarg_0);
ConstructorInfo? superConstructor = typeof(Object).GetConstructor(new Type[0]);
constructorIL.Emit(OpCodes.Call, superConstructor!);
constructorIL.Emit(OpCodes.Ldarg_0);
constructorIL.Emit(OpCodes.Ldarg_1);
constructorIL.Emit(OpCodes.Stfld, fldBuilder);
constructorIL.Emit(OpCodes.Ret);
// Create the DynamicMethod method.
MethodBuilder methBuilder = typBuilder.DefineMethod("DynamicMethod",
MethodAttributes.Public, typeof(String), null);
ILGenerator methodIL = methBuilder.GetILGenerator();
methodIL.Emit(OpCodes.Ldarg_0);
methodIL.Emit(OpCodes.Ldfld, fldBuilder);
methodIL.Emit(OpCodes.Ret);
Console.WriteLine($"Name : {fldBuilder.Name}");
Console.WriteLine($"DeclaringType : {fldBuilder.DeclaringType}");
Console.WriteLine($"Type : {fldBuilder.FieldType}");
return typBuilder.CreateType();
}
public static void Main()
{
Type? dynType = CreateType();
try
{
if (dynType is not null)
{
// Create an instance of the "HelloWorld" class.
Object? helloWorld = Activator.CreateInstance(dynType, new Object[] { "HelloWorld" });
// Invoke the "DynamicMethod" method of the "DynamicClass" class.
Object? obj = dynType.InvokeMember("DynamicMethod",
BindingFlags.InvokeMethod, null, helloWorld, null);
Console.WriteLine($"DynamicClass.DynamicMethod returned: \"{obj}\"");
}
}
catch (MethodAccessException e)
{
Console.WriteLine($"{e.GetType().Name}: {e.Message}");
}
}
}
Imports System.Reflection
Imports System.Reflection.Emit
Public Module FieldBuilder_Sample
Private Function CreateType() As Type
' Create an assembly.
Dim assemName As New AssemblyName()
assemName.Name = "DynamicAssembly"
Dim assemBuilder As AssemblyBuilder = AssemblyBuilder.DefineDynamicAssembly(assemName,
AssemblyBuilderAccess.Run)
' Create a dynamic module in Dynamic Assembly.
Dim modBuilder As ModuleBuilder = assemBuilder.DefineDynamicModule("DynamicModule")
' Define a public class named "DynamicClass" in the assembly.
Dim typBuilder As TypeBuilder = modBuilder.DefineType("DynamicClass",
TypeAttributes.Public)
' Define a private String field named "DynamicField" in the type.
Dim fldBuilder As FieldBuilder = typBuilder.DefineField("DynamicField",
GetType(String), FieldAttributes.Private Or FieldAttributes.Static)
' Create the constructor.
Dim constructorArgs As Type() = {GetType(String)}
Dim constructor As ConstructorBuilder =
typBuilder.DefineConstructor(MethodAttributes.Public,
CallingConventions.Standard, constructorArgs)
Dim constructorIL As ILGenerator = constructor.GetILGenerator()
constructorIL.Emit(OpCodes.Ldarg_0)
Dim superConstructor As ConstructorInfo = GetType(Object).GetConstructor(New Type() {})
constructorIL.Emit(OpCodes.Call, superConstructor)
constructorIL.Emit(OpCodes.Ldarg_0)
constructorIL.Emit(OpCodes.Ldarg_1)
constructorIL.Emit(OpCodes.Stfld, fldBuilder)
constructorIL.Emit(OpCodes.Ret)
' Create the DynamicMethod method.
Dim methBuilder As MethodBuilder = typBuilder.DefineMethod("DynamicMethod",
MethodAttributes.Public, GetType(String), Nothing)
Dim methodIL As ILGenerator = methBuilder.GetILGenerator()
methodIL.Emit(OpCodes.Ldarg_0)
methodIL.Emit(OpCodes.Ldfld, fldBuilder)
methodIL.Emit(OpCodes.Ret)
Console.WriteLine($"Name : {fldBuilder.Name}")
Console.WriteLine($"DeclaringType : {fldBuilder.DeclaringType}")
Console.WriteLine($"Type : {fldBuilder.FieldType}")
Return typBuilder.CreateType()
End Function
Public Sub Main()
Dim dynType As Type = CreateType()
Try
' Create an instance of the "HelloWorld" class.
Dim helloWorld As Object = Activator.CreateInstance(dynType, New Object() {"HelloWorld"})
' Invoke the "DynamicMethod" method of the "DynamicClass" class.
Dim obj As Object = dynType.InvokeMember("DynamicMethod",
BindingFlags.InvokeMethod, Nothing, helloWorld, Nothing)
Console.WriteLine($"DynamicClass.DynamicMethod returned: ""{obj}""")
Catch e As MethodAccessException
Console.WriteLine($"{e.GetType().Name}: {e.Message}")
End Try
End Sub
End Module
Açıklamalar
, veya çağırarak DefineFieldörneğini FieldBuilder
alın.DefineUninitializedDataDefineInitializedData
Not
Yöntemi SetValue şu anda desteklenmiyor. Geçici bir çözüm olarak, tamamlanmış türü yansıtarak değerini alın FieldInfo ve alanın değerini ayarlamak için çağrısı SetValue yapın.
Oluşturucular
FieldBuilder() |
FieldBuilder sınıfının yeni bir örneğini başlatır. |
Özellikler
Attributes |
Bu alanın özniteliklerini gösterir. Bu özellik salt okunur durumdadır. |
CustomAttributes |
Bu üyenin özel özniteliklerini içeren bir koleksiyon alır. (Devralındığı yer: MemberInfo) |
DeclaringType |
Bu alanı bildiren türün nesnesine başvuruyu Type gösterir. Bu özellik salt okunur durumdadır. |
FieldHandle |
Bu alanın iç meta veri tanıtıcısını gösterir. Bu özellik salt okunur durumdadır. |
FieldHandle |
Bir |
FieldType |
Type Bu alanın türünü temsil eden nesneyi gösterir. Bu özellik salt okunur durumdadır. |
IsAssembly |
Bu alanın olası görünürlüğünün tarafından Assemblyaçıklanıp açıklanmadığını belirten bir değer alır; başka bir deyişle, alan aynı derlemedeki diğer türlere en çok görünür ve derleme dışındaki türetilmiş türler tarafından görünmez. (Devralındığı yer: FieldInfo) |
IsCollectible |
Bu MemberInfo nesnenin toplanabilir AssemblyLoadContextbir derlemenin parçası olup olmadığını gösteren bir değer alır. (Devralındığı yer: MemberInfo) |
IsFamily |
Bu alanın görünürlüğünün tarafından Familyaçıklanıp tanımlanmadığını belirten bir değer alır; başka bir ifadeyle, alan yalnızca kendi sınıfı ve türetilmiş sınıflar içinde görünür. (Devralındığı yer: FieldInfo) |
IsFamilyAndAssembly |
Bu alanın görünürlüğünün tarafından FamANDAssemaçıklanıp tanımlanmadığını belirten bir değer alır; başka bir ifadeyle, alana türetilmiş sınıflardan erişilebilir, ancak yalnızca aynı derlemede olmaları gerekir. (Devralındığı yer: FieldInfo) |
IsFamilyOrAssembly |
Bu alanın olası görünürlüğünün ile FamORAssemaçıklanıp açıklanmadığını belirten bir değer alır; başka bir ifadeyle, alana nerede olurlarsa olsunlar türetilmiş sınıflar ve aynı derlemedeki sınıflar tarafından erişilebilir. (Devralındığı yer: FieldInfo) |
IsInitOnly |
Alanın yalnızca oluşturucunun gövdesinde ayarlanıp ayarlanamayacağını belirten bir değer alır. (Devralındığı yer: FieldInfo) |
IsLiteral |
Değerin derleme zamanında yazıp yazılmadığını ve değiştirilemeyeceğini belirten bir değer alır. (Devralındığı yer: FieldInfo) |
IsNotSerialized |
Geçersiz.
Bu alanın özniteliğine sahip |
IsPinvokeImpl |
İlgili |
IsPrivate |
Alanın özel olup olmadığını belirten bir değer alır. (Devralındığı yer: FieldInfo) |
IsPublic |
Alanın genel olup olmadığını belirten bir değer alır. (Devralındığı yer: FieldInfo) |
IsSecurityCritical |
Geçerli alanın geçerli güven düzeyinde güvenlik açısından kritik mi yoksa güvenlik açısından güvenli mi olduğunu gösteren bir değer alır. (Devralındığı yer: FieldInfo) |
IsSecuritySafeCritical |
Geçerli alanın geçerli güven düzeyinde güvenlik açısından güvenli-kritik olup olmadığını gösteren bir değer alır. (Devralındığı yer: FieldInfo) |
IsSecurityTransparent |
Geçerli alanın geçerli güven düzeyinde saydam olup olmadığını gösteren bir değer alır. (Devralındığı yer: FieldInfo) |
IsSpecialName |
İlgili |
IsStatic |
Alanın statik olup olmadığını belirten bir değer alır. (Devralındığı yer: FieldInfo) |
MemberType |
Bu üyenin bir MemberTypes alan olduğunu belirten bir değer alır. (Devralındığı yer: FieldInfo) |
MetadataToken |
Meta verilerdeki geçerli dinamik modülü tanımlayan bir belirteç alır. |
MetadataToken |
Meta veri öğesini tanımlayan bir değer alır. (Devralındığı yer: MemberInfo) |
Module |
Bu alanı içeren türün tanımlandığı modülü alır. |
Module |
Geçerli MemberInfo tarafından temsil edilen üyeyi bildiren türün tanımlandığı modülü alır. (Devralındığı yer: MemberInfo) |
Name |
Bu alanın adını gösterir. Bu özellik salt okunur durumdadır. |
ReflectedType |
Bu nesnenin alındığı nesneye Type başvuruyu gösterir. Bu özellik salt okunur durumdadır. |
ReflectedType |
bu örneğini |
Yöntemler
Equals(Object) |
Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür. (Devralındığı yer: FieldInfo) |
GetCustomAttributes(Boolean) |
Bu alan için tanımlanan tüm özel öznitelikleri döndürür. |
GetCustomAttributes(Boolean) |
Türetilmiş bir sınıfta geçersiz kılındığında, bu üyeye uygulanan tüm özel özniteliklerden oluşan bir dizi döndürür. (Devralındığı yer: MemberInfo) |
GetCustomAttributes(Type, Boolean) |
Verilen tür tarafından tanımlanan bu alan için tanımlanan tüm özel öznitelikleri döndürür. |
GetCustomAttributes(Type, Boolean) |
Türetilmiş bir sınıfta geçersiz kılındığında, bu üyeye uygulanan ve tarafından Typetanımlanan bir dizi özel öznitelik döndürür. (Devralındığı yer: MemberInfo) |
GetCustomAttributesData() |
Hedef üyeye CustomAttributeData uygulanmış özniteliklerle ilgili verileri temsil eden nesnelerin listesini döndürür. (Devralındığı yer: MemberInfo) |
GetHashCode() |
Bu örneğe ilişkin karma kodu döndürür. (Devralındığı yer: FieldInfo) |
GetModifiedFieldType() |
Bu alan nesnesinin değiştirilmiş türünü alır. (Devralındığı yer: FieldInfo) |
GetOptionalCustomModifiers() |
Alanın isteğe bağlı özel değiştiricilerini tanımlayan bir tür dizisi alır. (Devralındığı yer: FieldInfo) |
GetRawConstantValue() |
Bir derleyici tarafından alanla ilişkilendirilmiş bir değişmez değer döndürür. (Devralındığı yer: FieldInfo) |
GetRequiredCustomModifiers() |
Özelliğin gerekli özel değiştiricilerini tanımlayan bir tür dizisi alır. (Devralındığı yer: FieldInfo) |
GetToken() |
Bu alanı temsil eden belirteci döndürür. |
GetType() |
Sınıf alanının özniteliklerini bulur ve alan meta verilerine erişim sağlar. (Devralındığı yer: FieldInfo) |
GetValue(Object) |
Verilen nesne tarafından desteklenen alanın değerini alır. |
GetValueDirect(TypedReference) |
Belirli bir nesne tarafından desteklenen bir alanın değerini döndürür. (Devralındığı yer: FieldInfo) |
HasSameMetadataDefinitionAs(MemberInfo) |
Bir alanı tanımlar ve temsil eder. Bu sınıf devralınamaz. (Devralındığı yer: MemberInfo) |
IsDefined(Type, Boolean) |
Belirtilen türe sahip bir özniteliğin bir alanda tanımlanıp tanımlanmadığını gösterir. |
IsDefined(Type, Boolean) |
Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen türde veya türetilmiş türlerinden bir veya daha fazla özniteliğin bu üyeye uygulanıp uygulanmadığını gösterir. (Devralındığı yer: MemberInfo) |
MemberwiseClone() |
Geçerli Objectöğesinin sığ bir kopyasını oluşturur. (Devralındığı yer: Object) |
SetConstant(Object) |
Bu alanın varsayılan değerini ayarlar. |
SetConstantCore(Object) |
Türetilmiş bir sınıfta geçersiz kılındığında, bu alanın varsayılan değerini ayarlar. |
SetCustomAttribute(ConstructorInfo, Byte[]) |
Belirtilen özel öznitelik blobu kullanarak özel bir öznitelik ayarlar. |
SetCustomAttribute(CustomAttributeBuilder) |
Özel öznitelik oluşturucu kullanarak özel bir öznitelik ayarlar. |
SetCustomAttributeCore(ConstructorInfo, ReadOnlySpan<Byte>) |
Türetilmiş bir sınıfta geçersiz kılındığında, bu derlemede özel bir öznitelik ayarlar. |
SetMarshal(UnmanagedMarshal) |
Geçersiz.
Alanın yerel sıralamasını açıklar. |
SetOffset(Int32) |
Alan düzenini belirtir. |
SetOffsetCore(Int32) |
Türetilmiş bir sınıfta geçersiz kılındığında, alan düzenini belirtir. |
SetValue(Object, Object) |
Verilen nesne tarafından desteklenen alanın değerini ayarlar. (Devralındığı yer: FieldInfo) |
SetValue(Object, Object, BindingFlags, Binder, CultureInfo) |
Verilen nesne tarafından desteklenen alanın değerini ayarlar. |
SetValue(Object, Object, BindingFlags, Binder, CultureInfo) |
Türetilmiş bir sınıfta geçersiz kılındığında, verilen nesne tarafından desteklenen alanın değerini ayarlar. (Devralındığı yer: FieldInfo) |
SetValueDirect(TypedReference, Object) |
Verilen nesne tarafından desteklenen alanın değerini ayarlar. (Devralındığı yer: FieldInfo) |
ToString() |
Geçerli nesneyi temsil eden dizeyi döndürür. (Devralındığı yer: Object) |
Belirtik Arabirim Kullanımları
_FieldBuilder.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler. |
_FieldBuilder.GetTypeInfo(UInt32, UInt32, IntPtr) |
Bir nesne için tür bilgilerini alır ve bu da bir arabirimin tür bilgisini almak için kullanılabilir. |
_FieldBuilder.GetTypeInfoCount(UInt32) |
Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1). |
_FieldBuilder.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar. |
_FieldInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler. (Devralındığı yer: FieldInfo) |
_FieldInfo.GetType() |
Türü temsil eden FieldInfo bir Type nesne alır. (Devralındığı yer: FieldInfo) |
_FieldInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Bir nesne için tür bilgilerini alır ve bu da bir arabirimin tür bilgisini almak için kullanılabilir. (Devralındığı yer: FieldInfo) |
_FieldInfo.GetTypeInfoCount(UInt32) |
Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1). (Devralındığı yer: FieldInfo) |
_FieldInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar. (Devralındığı yer: FieldInfo) |
_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Bir ad kümesini karşılık gelen bir dağıtma tanımlayıcısı kümesine eşler. (Devralındığı yer: MemberInfo) |
_MemberInfo.GetType() |
sınıfını MemberInfo temsil eden bir Type nesne alır. (Devralındığı yer: MemberInfo) |
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Bir nesne için tür bilgilerini alır ve bu da bir arabirimin tür bilgisini almak için kullanılabilir. (Devralındığı yer: MemberInfo) |
_MemberInfo.GetTypeInfoCount(UInt32) |
Bir nesnenin sağladığı tür bilgisi arabirimlerinin sayısını alır (0 ya da 1). (Devralındığı yer: MemberInfo) |
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Bir nesne tarafından sunulan özelliklere ve yöntemlere erişim sağlar. (Devralındığı yer: MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Boolean) |
Adlandırılmış öznitelikler hariç, bu üyede tanımlanan tüm özel özniteliklerin dizisini veya özel öznitelikler yoksa boş bir diziyi döndürür. (Devralındığı yer: MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
Bu üyede tanımlanan, türe göre tanımlanan bir özel öznitelik dizisi veya bu türde özel öznitelikler yoksa boş bir dizi döndürür. (Devralındığı yer: MemberInfo) |
ICustomAttributeProvider.IsDefined(Type, Boolean) |
Bir veya daha fazla örneğinin bu üyede tanımlanıp tanımlanmadığını |
Uzantı Metotları
GetCustomAttribute(MemberInfo, Type) |
Belirtilen üyeye uygulanan belirtilen türde bir özel özniteliği alır. |
GetCustomAttribute(MemberInfo, Type, Boolean) |
Belirtilen üyeye uygulanan belirtilen türde bir özel özniteliği alır ve isteğe bağlı olarak bu üyenin üstlerini inceler. |
GetCustomAttribute<T>(MemberInfo) |
Belirtilen üyeye uygulanan belirtilen türde bir özel özniteliği alır. |
GetCustomAttribute<T>(MemberInfo, Boolean) |
Belirtilen üyeye uygulanan belirtilen türde bir özel özniteliği alır ve isteğe bağlı olarak bu üyenin üstlerini inceler. |
GetCustomAttributes(MemberInfo) |
Belirtilen üyeye uygulanan özel öznitelikler koleksiyonunu alır. |
GetCustomAttributes(MemberInfo, Boolean) |
Belirtilen üyeye uygulanan özel özniteliklerden oluşan bir koleksiyonu alır ve isteğe bağlı olarak bu üyenin atalarını inceler. |
GetCustomAttributes(MemberInfo, Type) |
Belirtilen bir üyeye uygulanan belirtilen türde özel özniteliklerden oluşan bir koleksiyonu alır. |
GetCustomAttributes(MemberInfo, Type, Boolean) |
Belirtilen bir üyeye uygulanan belirtilen türde özel özniteliklerden oluşan bir koleksiyonu alır ve isteğe bağlı olarak bu üyenin üstlerini inceler. |
GetCustomAttributes<T>(MemberInfo) |
Belirtilen bir üyeye uygulanan belirtilen türde özel özniteliklerden oluşan bir koleksiyonu alır. |
GetCustomAttributes<T>(MemberInfo, Boolean) |
Belirtilen bir üyeye uygulanan belirtilen türde özel özniteliklerden oluşan bir koleksiyonu alır ve isteğe bağlı olarak bu üyenin üstlerini inceler. |
IsDefined(MemberInfo, Type) |
Belirtilen türde özel özniteliklerin belirtilen üyeye uygulanıp uygulanmadığını gösterir. |
IsDefined(MemberInfo, Type, Boolean) |
Belirtilen türlerdeki özel özniteliklerin belirtilen üyeye uygulanıp uygulanmadığını ve isteğe bağlı olarak, üstlerine uygulanıp uygulanmadığını gösterir. |
GetMetadataToken(MemberInfo) |
Varsa, verilen üye için bir meta veri belirteci alır. |
HasMetadataToken(MemberInfo) |
Belirtilen üye için bir meta veri belirtecinin kullanılabilir olup olmadığını gösteren bir değer döndürür. |