要获取继承类的属性,可以使用 C# 中的反射机制。下面是一个示例代码:

using System;
using System.Reflection;

class BaseClass
{
    public int BaseProp { get; set; }
}

class DerivedClass : BaseClass
{
    public int DerivedProp { get; set; }
}

class Program
{
    static void Main()
    {
        // 创建DerivedClass对象
        var obj = new DerivedClass();

        // 获取DerivedClass对象的类型信息
        Type type = obj.GetType();

        // 获取所有公共属性
        PropertyInfo[] props = type.GetProperties(BindingFlags.Public | BindingFlags.Instance);

        // 遍历所有属性
        foreach (var prop in props)
        {
            Console.WriteLine(prop.Name);
        }
    }
}

上面的代码中,我们首先定义了一个基类'BaseClass'和一个继承自'BaseClass'的派生类'DerivedClass',并在两个类中分别定义了一些属性。然后在'Main'方法中,我们创建了一个'DerivedClass'对象,并使用'GetType'方法获取了该对象的类型信息。接着,使用'GetProperties'方法获取了该类型的所有公共属性,并遍历输出了属性名称。

在这个示例中,输出结果为:

BaseProp
DerivedProp

可以看到,我们成功获取了'DerivedClass'的所有属性,包括继承自'BaseClass'的属性。

C# 使用反射获取继承类属性

原文地址: https://www.cveoy.top/t/topic/ofJv 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录