如何在C#中通过反射设置属性值?

系统。反射命名空间包含一些类,这些类使您可以获取有关应用程序的信息,并为应用程序动态添加类型,值和对象。

反射对象用于在运行时获取类型信息。可以访问正在运行的程序的元数据的类在系统中。反射命名空间。

反射允许在运行时查看视图属性信息。

反射允许检查装配中的各种类型并实例化这些类型。

反射允许后期绑定到方法和属性。

反射允许在运行时创建新类型,然后使用这些类型执行一些任务。

示例

GetProperty(字符串)

搜索具有指定名称的公共属性。

GetType(字符串,布尔值)

在程序集实例中获取具有指定名称的Type对象,如果找不到该类型,则可以选择抛出异常。

SetValue(对象,对象)

设置指定对象的属性值。

class Program{

   static void Main(string[] args){

      User user = new User();

      Type type = user.GetType();

      PropertyInfo prop = type.GetProperty("Name");

      prop.SetValue(user, "Bangalore", null);

      System.Console.WriteLine(user.Name);

      Console.ReadLine();

   }

}

class User{

   public int Id { get; set; }

   public string Name { get; set; }

}

输出结果

Bangalore

以上是 如何在C#中通过反射设置属性值? 的全部内容, 来源链接: utcz.com/z/326555.html

回到顶部