s_h_w 2015-04-01 11:55 采纳率: 100%
浏览 7739
已采纳

请教:C#反射GetType().GetProperties()为什么取不到值?

做了一个方法,传入某对象,如果是string类型则后面加个“1”
加断点propertys的值是{System.Reflection.PropertyInfo[0]}
进不到 foreach循环里,请高手看看这是怎么回事啊?
调用代码是:bm = getObject(bm);

public T getObject(T t)

{

string temp = "";

System.Reflection.PropertyInfo[] propertys = t.GetType().GetProperties();

foreach (System.Reflection.PropertyInfo p in propertys)

{

if (p.PropertyType == typeof(string))

{

temp = p.GetValue(t, null).ToString();

p.SetValue(t, temp+"1", null);

}

}

return t;

}

  • 写回答

2条回答 默认 最新

  • bdmh 优质创作者: 移动开发技术领域 2015-04-01 12:02
    关注

    首先确认你的实例中是否有property,就是通过getter或stter访问的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?