Fork me on GitHub

C#中属性PropertyInfo的setvalue方法

C#   这个方法只支持class,不支持struct-----答案:---https://stackoverflow.com/questions/9694404/propertyinfo-setvalue-not-working-but-no-errors
public virtual void SetValue (object obj, object value, object[] index);
参数
obj Object
将设置其属性值的对象。
value Object
新的属性值。
index Object[]
索引化属性的可选索引值。 对于非索引化属性,该值应为 null。

示例:

//运用propertyinfo的映射方法,给实体类item的所有属性赋值。
                foreach (var prop in propertyArr)
                {
                    string name = prop.Name;
                    string text = _sheet.GetCellText(name + i);
                    if (name == "A" && string.IsNullOrWhiteSpace(text))
                    {
                        empty = true;
                        break;
                    }
                    prop.SetValue(item, text, null);//给属性赋值
                }

posted @ 2022-12-28 10:56  -悟空  阅读(704)  评论(0)    收藏  举报