为什么在尝试根据名称获取属性值时,我获得空值?

时间:2015-10-31 16:03:50

标签: c# reflection getproperty

我有这个代码用于根据属性的字符串名称获取属性的值

public class Person
{
    public String LastName;
}    
static void Main()
{
    Person person1 = new Person { Born = new DateTime(1989, 10, 7), FirstName = "John", LastName = "Smith" };
    string propertytoGet = "LastName";        
    object wantedProperty = person1.GetType().GetProperty(propertytoGet).GetValue(person1, null);    
}  

我得到空引用异常,因为GetProperty(propertytoGet)返回null。我在stackoverflow上找到了这个解决方案,它被标记为答案,但它对我没有用。

1 个答案:

答案 0 :(得分:-1)

抱歉,关于我的不注意错误。忘了在LastName之后写{get; set},即它不是属性。最后一行的方法工作正常