Edit

Share via


Type.GetTypeCode(Type) Method

Definition

Gets the underlying type code of the specified Type.

public:
 static TypeCode GetTypeCode(Type ^ type);
public static TypeCode GetTypeCode (Type? type);
public static TypeCode GetTypeCode (Type type);
static member GetTypeCode : Type -> TypeCode
Public Shared Function GetTypeCode (type As Type) As TypeCode

Parameters

type
Type

The type whose underlying type code to get.

Returns

The code of the underlying type, or Empty if type is null.

Examples

The following code example demonstrates how the TypeCode enumeration can be used. In a decision block inside the WriteObjectInfo method, the TypeCode of an Object parameter is examined, and an appropriate message is written to the console.

void WriteObjectInfo( Object^ testObject )
{
   TypeCode typeCode = Type::GetTypeCode( testObject->GetType() );
   switch ( typeCode )
   {
      case TypeCode::Boolean:
         Console::WriteLine( "Boolean: {0}", testObject );
         break;

      case TypeCode::Double:
         Console::WriteLine( "Double: {0}", testObject );
         break;

      default:
         Console::WriteLine( "{0}: {1}", typeCode, testObject );
         break;
   }
}
static void WriteObjectInfo(object testObject)
{
    TypeCode    typeCode = Type.GetTypeCode( testObject.GetType() );

    switch( typeCode )
    {
        case TypeCode.Boolean:
            Console.WriteLine("Boolean: {0}", testObject);
            break;

        case TypeCode.Double:
            Console.WriteLine("Double: {0}", testObject);
            break;

        default:
            Console.WriteLine("{0}: {1}", typeCode.ToString(), testObject);
            break;
    }
}
let writeObjectInfo (testObject: obj) = 
    let typeCode = Type.GetTypeCode(testObject.GetType())
    match typeCode with
    | TypeCode.Boolean ->
        printfn $"Boolean: {testObject}"
    | TypeCode.Double ->
        printfn "Double: {testObject}"
    | _ ->
        printfn $"{typeCode}: {testObject}"
Sub WriteObjectInfo(ByVal testObject As Object)
    Dim typeCode As TypeCode = Type.GetTypeCode(testObject.GetType())

    Select Case typeCode
        Case typeCode.Boolean
            Console.WriteLine("Boolean: {0}", testObject)

        Case typeCode.Double
            Console.WriteLine("Double: {0}", testObject)

        Case Else
            Console.WriteLine("{0}: {1}", typeCode.ToString(), testObject)
    End Select
End Sub

Remarks

When you inherit from Type, you can change the behavior of this method by overriding the GetTypeCodeImpl method. For Enum types, the type code of the underlying integral type is returned.

Applies to

See also