使用Mono Cecil的类型的默认值

时间:2012-12-22 18:23:28

标签: .net reflection mono mono.cecil

我有一种方法可以根据下面的反射返回任何类型的默认值

private object getDefault(Type type) 
{
    object defaultValue = null;
    //I have some specific logics here
    defaultValue = getCustomDefaultValues(type);

    //Value types
    if(defaultValue == Type.Missing && type.IsValueType)  
    {       
         defaultValue=  Activator.CreateInstance(type);  
    }
    //All other types including Ref.        
    return defaultValue == Type.Missing ? "null" : defaultValue;
}   

现在我从经典反思转向Mono Cecil。所以“Type”将成为“TypeDefinition”。问题是 Activator.CreateInstance(type); 不适用于TypeDefinition。那么还有其他方法可以找到任何类型的默认值吗?或者任何现有的简单方法来获取Cecil中Type的默认值?

0 个答案:

没有答案