对象不匹配SetValue中的目标类型Exception

本文关键字:目标 类型 Exception 不匹配 SetValue 对象 | 更新日期: 2023-09-27 18:06:01

//try to set this property .
 public List<USER_ROLE> list {get;set;}
var result = new List<USER_ROLE>() { new USER_ROLE()
                              { userid = 0,role_id = 1,role_cde = "00001"
                               }};
    //Get property with name of property.
object obj = Activator.CreateInstance(property.PropertyType);
var getva = property.GetValue(obj,null);// Object does not match target type

property.PropertyType.GetMethod("Add").Invoke(obj,new object[] { result });
if (obj.GetType() == property.PropertyType)
{
property.SetValue(obj, property, null);// object does not match target type.
}

运行时异常:object不匹配目标类型。我不明白目标类型,请告诉我,我错在哪里?

对象不匹配SetValue中的目标类型Exception

查看文档后,似乎认为您的第一个参数是原始对象,第二个参数是您希望设置属性的值。

看起来你想要将属性设置为obj,在这种情况下,你会执行

property.SetValue(/*instance of whatever class has the property*/, obj, null);