c# - 使用反射获取基类的 protected 属性值

标签 c# dictionary

我想知道是否可以访问位于对象基类中的 ConfigurationId 属性的值并且它是私有(private)的。我试图通过反射(reflection)来做到这一点,但没有运气。 enter image description here

最佳答案

为了访问 ConfigurationId 属性,我使用了以下代码:

SubsetController controller = new SubsetController(new CConfigRepository(new FakeDataContextRepository()));

var myBaseClassProtectedProperty =
            controller.GetType().BaseType
                .GetProperty("CCITenderInfo", BindingFlags.NonPublic | BindingFlags.Instance)
                .GetValue(controller);

var myProtectedProperty =
            CCITenderInfo.GetType()
                .GetProperty("ConfigurationId", BindingFlags.Public | BindingFlags.Instance)
                .GetValue(myBaseClassProtectedProperty);

关于c# - 使用反射获取基类的 protected 属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32184402/

相关文章:

c# - 根据 WPF 中的值设置背景

c# - 流在 C# 中不可写

c# - 如何对网格中的所有文本 block 使用相同的比例变换

python - 我如何从元组列表中制作字典?

python - 嵌套字典的类对象属性访问

c++查找 map 值和键

c# - 我如何计算矢量的反面,增加一些松弛

c# - MEF - 从嵌入式 DLL 获取程序集

arrays - VBA:字典项到字符串数组?

swift - 快速通过 segue 发送字典