5

我正在使用 aDataTable并为列分配不同的类型。我有一个场景,我正在接收String数据,我想根据列的分配类型解析它,但我不知道如何使用解析方法。

是否可以以通用方式访问 Type 实例的解析方法?

4

2 回答 2

5

你正在寻找Convert.ChangeType.

于 2010-12-22T14:15:47.890 回答
2

如果您使用的不是基本类型(Convert.ChangeType处理得很好),那么首选的方法是通过TypeConverter

var converter = TypeDescriptor.GetConverter(type);
object val = converter.ConvertFromString(s); // note various overloads,
                                             // or ConvertFromInvariantString

这很方便,因为该模型可以扩展以识别其他类型(或更改现有类型的实现),无论是在编译时(添加[TypeConverter(...)])还是在运行时(TypeDescriptor.AddAttributes(...))。

于 2010-12-22T14:37:42.870 回答