(C#) 如何根据name字段存值?

(C#) How to store value based on the name field?

我有一个 ArrayList,其中包含当前对象中的字段名称,当我尝试这样做时:

foreach(string name in array)
{
  PropertyInfo property =  this.GetType().GetProperty(name);
  property.SetValue(this, value , null);
}

执行失败,属性没有值(在SharpDevelop中只说"null")。字段名称正常且存在,发生了什么?

您的 属性 是否有 setter(set 访问器)。在设置 属性 like

之前最好检查一下
if(property != null && property.CanWrite)
{
    property.SetValue(this, value , null);
}

顺便说一句,您要访问的是字段还是 属性?因为你说 字段的名称是正确的并且存在