5
从.NET 1.0开始,Convert
类就已经存在。自此以后,接口也一直存在。为什么Convert.ChangeType需要一个对象参数?
的Convert.ChangeType
方法只作品上实现IConvertible
(事实上,除非我错了,全部由Convert
类提供的转换方法都是这样)类型的对象。那么为什么参数类型为object
?
换句话说,而不是这样的:
public object ChangeType(object value, Type conversionType);
为什么签名是不是这个?
public object ChangeType(IConvertible value, Type conversionType);
对我来说这似乎很奇怪。
我想这似乎是唯一可能的解释......不,这不是很奇怪么,虽然,设计师会考虑行为“可以采取对象并将其转换为相同类型”,甚至值得支持?我的意思是,这将用于什么? – 2010-10-05 13:16:07
@丹 - 我认为ObjectDatasource在内部使用IIRC,我猜他们更喜欢内部检查而不是外部检查?我同意这看起来不太有用。 – 2010-10-05 13:21:49