+ -
当前位置:首页 → 问答吧 → 反射取值问题,求指点

反射取值问题,求指点

时间:2011-12-18

来源:互联网

//当获取的属性的类型是一个类时,就会报出“为将对象引用设置到对象的实例”的异常
下面是伪代码
C# code

   public class A
    {
        public int Id { get; set; }
        B model = new B();
        public B Model
        {
            get { return model; }
            set { model = value; }
        }
    }

    public class B
    {
        public int Id { get; set; }
    }

    public void Reflection()
    {
        A a = new A();
        PropertyInfo[] Arr = a.GetType().GetProperties();
        Dictionary<string, object> dic = new Dictionary<string, object>();
        foreach (PropertyInfo item in Arr)
        {
            //当获取的属性的类型是一个类时,就会报出“为将对象引用设置到对象的实例”的异常
            dic.Add(item.Name,item.GetValue(a,null));
        }
    }

作者: a157147899   发布时间: 2011-12-18

顶一个!

作者: a157147899   发布时间: 2011-12-18

你现在的代码没问题

作者: Sandy945   发布时间: 2011-12-18

额,都吃饭了吗?

作者: a157147899   发布时间: 2011-12-18

非哥,你可以试下这段代码,这个报错是啥原因呢?
C# code

 dic.Add(item.Name,item.GetValue(a,null));


是不是这里的GetValue 不应该传 类A 的实例?

作者: a157147899   发布时间: 2011-12-18