类型转换

目前系统中存在很多类型转换的函数,如Object2Int,Ojbect2Short,Object2Long等,代码重复性很高

性能不如使用Parse或者TryParse进行转换,但是可以使代码更简洁,适用于对性能要求不高的场景

 

 1     private static T Convert<S, T>(S source)
 2     {
 3         var converter = TypeDescriptor.GetConverter(typeof(T));
 4         if (converter != null && converter.CanConvertFrom(typeof(S)))
 5         {
 6             var value = (T)converter.ConvertFrom(source);
 7             return value;
 8         }
 9         else
10         {
11             return default(T);
12         }
13     }

 

posted @ 2022-01-13 16:47  CS讷于言而敏于行  阅读(35)  评论(0编辑  收藏  举报