System.Variant.ToObject C# (CSharp) Method

ToObject() public method

public ToObject ( ) : Object
return Object
        public Object ToObject() {
            switch (CVType) {
            case CV_EMPTY:
                return null;
            case CV_BOOLEAN:
                return (Object)(m_data1!=0);
            case CV_I1:
                return (Object)((sbyte)m_data1);
            case CV_U1:
                return (Object)((byte)m_data1);
            case CV_CHAR:
                return (Object)((char)m_data1);
            case CV_I2:
                return (Object)((short)m_data1);
            case CV_U2:
                return (Object)((ushort)m_data1);
            case CV_I4:
                return (Object)(m_data1);
            case CV_U4:
                return (Object)((uint)m_data1);
            case CV_I8:
                return (Object)(GetI8FromVar());
            case CV_U8:
                return (Object)((ulong)GetI8FromVar());
            case CV_R4:
                return (Object)(GetR4FromVar());
            case CV_R8:
                return (Object)(GetR8FromVar());
            case CV_DATETIME:
                return new DateTime(GetI8FromVar());
            case CV_TIMESPAN:
                return new TimeSpan(GetI8FromVar());
            case CV_ENUM:
                return BoxEnum();
            case CV_MISSING:
                return Type.Missing;
            case CV_NULL:
                return System.DBNull.Value;
            case CV_DECIMAL:
            case CV_STRING:
            case CV_OBJECT:
            default:
                return m_objref;
            }
        }

Usage Example

示例#1
0
 // Helper code for marshaling VARIANTS to managed objects (we use
 // managed variants as an intermediate type.
 internal static object?MarshalHelperConvertVariantToObject(ref Variant v)
 {
     return(v.ToObject());
 }