private object GetValueByProperty(string key, string value, ref Type typeValue)
{
Type t = typeof(T);
var property = t.GetProperty(key);
if (property == null)
{
return value;
}
Type pt = property.PropertyType.IsGenericType && !property.PropertyType.IsGenericTypeDefinition
? property.PropertyType.GetGenericArguments()[0] : property.PropertyType;
object obj = Convert.ChangeType(value, pt);
if (property.PropertyType.IsGenericType && !property.PropertyType.IsGenericTypeDefinition)
{
typeValue = property.PropertyType;
}
else
{
typeValue = pt;
}
return obj;
}key:属性名称
value:字符串类型的值
typevalue:属性类型
返回:转换后的值