码迷,mamicode.com
首页 > 其他好文 > 详细

泛型使用中,解决类型转换问题

时间:2014-12-15 20:18:14      阅读:171      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   ar   color   使用   sp   on   div   

遇到的问题是这样,系统中有一个字符类型的字段来存储一些通用的系统配置,虽然存储的形式是字符串,但是实际在系统中的使用类型则可能是string, bool, int, decimal.

这个时候就想写一个通用的方法来获取各种不同类型的返回值,当然这个时候想到的就是使用泛型。那么这个方法的定义大概就是这样:

T GetValue<T>(string key)

这个方法涉及到一个字符串类型转换成泛型的问题。

public T GetSingleConfigValue<T>(eConfigKeyName key, T defaultValue)
{
      var config = GetConfig(key)
      return (T)config;
}

直接使用上面的方式,就会出现如下的编译错误。

bubuko.com,布布扣 

查了查资料,正确的方法是使用Convert.ChangeType方法:

(T) Convert.ChangeType(result, typeof (T));

 

泛型使用中,解决类型转换问题

标签:style   blog   http   ar   color   使用   sp   on   div   

原文地址:http://www.cnblogs.com/JustRun1983/p/4165742.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!