PropertyInfo可以获取私有属性吗

avatar
作者
筋斗云
阅读量:0

PropertyInfo类可以获取私有属性,但是需要使用BindingFlags参数来指定要获取的属性的访问权限。例如,可以使用BindingFlags.NonPublic来获取私有属性。以下是一个示例代码:

using System; using System.Reflection;  public class MyClass {     private int myPrivateField = 10; }  class Program {     static void Main()     {         MyClass obj = new MyClass();         Type type = obj.GetType();         BindingFlags flags = BindingFlags.NonPublic | BindingFlags.Instance;         PropertyInfo propertyInfo = type.GetProperty("myPrivateField", flags);         Console.WriteLine(propertyInfo.GetValue(obj)); // Output: 10     } } 

在上面的示例中,使用BindingFlags.NonPublic和BindingFlags.Instance来获取私有属性myPrivateField的值。

广告一刻

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