c# - silverlight TypeDescriptor.GetConverter 替代品

标签 c# silverlight type-conversion

我正在尝试使用 LINQ to CSV silverlight 中的项目(这是一个伟大的项目),因为它是开源的,我想我可以重新编译为 silverlight 类库,但不幸的是它似乎使用了 silverlight 中不可用的功能。 TypeDescriptor.GetConverter方法。

它使用它来查找类型转换器以正确地将 csv 列解析为其相应的 CLR 类型。我可以毫无问题地更改 linqtocsv 源以使其在 Silverlight 中工作,但我只是不知道在 Silverlight 中会有什么等效操作。各种谷歌搜索把我带到这个page ,但这只是说 XAML 解析器有一种方法可以执行此操作(但它没有说明如何访问此功能)。

简而言之,问题是:

如何复制 TypeDescriptor.GetConverter 的功能?

我不一定需要完全减少替换,我只是想知道一个不用硬编码一堆类型 <---> typeconverter 关联的好方法。

最佳答案

在轻型框架上,您的选择有限;我不会回避一些硬编码,特别是如果您只需要支持核心类型。它还将比完整的 TypeConverter 选项更简单、更快。像这样的东西:

    static object Parse(Type type, string s)
    {
        switch (Type.GetTypeCode(type))
        {
            case TypeCode.Boolean: return bool.Parse(s);
            case TypeCode.Byte: return byte.Parse(s);
            case TypeCode.Char: return s[0];
            case TypeCode.DateTime: return DateTime.Parse(s);
                ...
        }
    }

关于c# - silverlight TypeDescriptor.GetConverter 替代品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2962780/

相关文章:

c - 将字符串数组转换为 C 中的字符串

c# - wpf excel 喜欢网格编辑吗?

c# - 移植到 windows7 后 Debug模式 (VS2010) 中的 BadImageFormat 错误

c# - 文本文件分隔 - 性能问题

silverlight - 如何使用 MVVM 构建图形密集型 Silverlight 应用程序?

silverlight - Windows Embedded Compact 7 是否支持真正的 Silverlight?

c# - 没有 TextBox 的 TimePicker

c# - 来自 wcf 服务的 Silverlight 异常(故障)处理

java - 对角色进行一元运算后装箱

java - 将字符串数字转换为整数数组