相关疑难解决方法(0)

使用C#中的反射从字符串中获取属性值

我正在尝试使用我的代码中的Reflection 1示例实现数据转换.

GetSourceValue函数有一个比较各种类型的开关,但我想删除这些类型和属性,并GetSourceValue只使用一个字符串作为参数获取属性的值.我想在字符串中传递一个类和属性并解析属性的值.

这可能吗?

1个 原始博客文章的Web Archive版本

c# reflection

860
推荐指数
12
解决办法
68万
查看次数

通过反射使用字符串值设置属性

我想通过Reflection设置对象的属性,值为type string.所以,举个例子,假设我有Ship一个属性为的类Latitude,它是一个double.

这是我想做的事情:

Ship ship = new Ship();
string value = "5.5";
PropertyInfo propertyInfo = ship.GetType().GetProperty("Latitude");
propertyInfo.SetValue(ship, value, null);
Run Code Online (Sandbox Code Playgroud)

这样就抛出了ArgumentException:

"System.String"类型的对象无法转换为"System.Double"类型.

如何将值转换为正确的类型,基于propertyInfo

c# reflection type-conversion propertyinfo setvalue

298
推荐指数
8
解决办法
26万
查看次数

标签 统计

c# ×2

reflection ×2

propertyinfo ×1

setvalue ×1

type-conversion ×1