我有这个数据可能非常大,这可能是一个xmlstring,dataset,datatable,datarowcollection。此数据将与其类型一起传递给泛型方法。
void GenericMethod(object data, Type t)
{
var d = Convert.ChangeType(data, t);
//some tasks to do
}
问题:如果数据是1GB,ChangeType会创建另一个1GB的对象吗? 我只想确定,因为内存使用情况。
答案 0 :(得分:3)
Convert.ChangeType
调用实例的IConvertible
实现,可以随意执行任何操作。
如果传递的对象未实现IConvertible
,则抛出异常。