c#反射获取字段怎么实现

avatar
作者
筋斗云
阅读量:0

在C#中,可以使用System.Reflection命名空间提供的类来实现反射获取字段的功能。下面是一个简单的示例代码,演示如何使用反射获取字段:

using System; using System.Reflection;  public class MyClass {     public int MyField; }  class Program {     static void Main()     {         // 创建一个MyClass的实例         MyClass myObject = new MyClass();          // 获取MyClass类型的Type对象         Type myType = typeof(MyClass);          // 使用反射获取MyField字段的信息         FieldInfo myFieldInfo = myType.GetField("MyField");          // 输出字段的名称和类型         Console.WriteLine("Field Name: " + myFieldInfo.Name);         Console.WriteLine("Field Type: " + myFieldInfo.FieldType);          // 设置字段的值为10         myFieldInfo.SetValue(myObject, 10);          // 获取字段的值并输出         int value = (int)myFieldInfo.GetValue(myObject);         Console.WriteLine("Field Value: " + value);     } } 

在上面的示例中,我们首先创建了一个MyClass类,其中包含一个公有整型字段MyField。然后在Main方法中,我们首先获取MyClassType对象,然后使用GetField方法获取MyField字段的FieldInfo对象。接着我们可以通过FieldInfo对象来获取字段的名称、类型,以及设置和获取字段的值。

通过以上方式,我们可以实现使用反射获取字段的功能。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!