Type.Equals Method (Type)

Microsoft Silverlight will reach end of support after October 2021. Learn more.

Determines if the underlying system type of the current Type is the same as the underlying system type of the specified Type.

Namespace:  System
Assembly:  mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Function Equals ( _
    o As Type _
) As Boolean
public bool Equals(
    Type o
)

Parameters

  • o
    Type: System.Type
    The Type whose underlying system type is to be compared with the underlying system type of the current Type.

Return Value

Type: System.Boolean
true if the underlying system type of o is the same as the underlying system type of the current Type; otherwise, false.

Examples

The following example uses Equals to compare two types.

Imports System.Reflection



Class Example

   Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)

      Dim a As Type = GetType(System.String)
      Dim b As Type = GetType(System.Int32)

      outputBlock.Text += String.Format("{0} = {1}: {2}", a, b, a.Equals(b)) & vbCrLf
      ' The Type objects in a and b are not equal,
      ' because they represent different types.

      a = GetType(Example)
      b = New Example().GetType()
      outputBlock.Text += String.Format("{0} is equal to {1}: {2}", a, b, a.Equals(b)) & vbCrLf
      ' The Type objects in a and b are equal,
      ' because they both represent type Example.

      b = GetType(Type)
      outputBlock.Text += String.Format("typeof({0}).Equals(typeof({1})): {2}", a, b, a.Equals(b)) & vbCrLf
      ' The Type objects in a and b are not equal,
      ' because variable a represents type Example
      ' and variable b represents type Type.

      'Console.ReadLine()

   End Sub
End Class
'
' This code example produces the following output:
'    System.String = System.Int32: False
'    Example is equal to Example: True
'    typeof(Example).Equals(typeof(System.Type)): False
'

using System;
using System.Reflection;

class Example
{
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
   {

      Type a = typeof(System.String);
      Type b = typeof(System.Int32);

      outputBlock.Text += String.Format("{0} == {1}: {2}", a, b, a.Equals(b)) + "\n";

      // The Type objects in a and b are not equal,
      // because they represent different types.

      a = typeof(Example);
      b = new Example().GetType();

      outputBlock.Text += String.Format("{0} is equal to {1}: {2}", a, b, a.Equals(b)) + "\n";

      // The Type objects in a and b are equal,
      // because they both represent type Example.

      b = typeof(Type);

      outputBlock.Text += String.Format("typeof({0}).Equals(typeof({1})): {2}", a, b, a.Equals(b)) + "\n";

      // The Type objects in a and b are not equal,
      // because variable a represents type Example
      // and variable b represents type Type.

      //Console.ReadLine();

   }
}

//
/* This code example produces the following output:
    System.String == System.Int32: False
    Example is equal to Example: True
    typeof(Example).Equals(typeof(System.Type)): False
*/

Version Information

Silverlight

Supported in: 5, 4, 3

Silverlight for Windows Phone

Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0

XNA Framework

Supported in: Xbox 360, Windows Phone OS 7.0

Platforms

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.