Guid.CompareTo Method (Object)
Microsoft Silverlight will reach end of support after October 2021. Learn more.
Compares this instance to a specified object and returns an indication of their relative values.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Syntax
'Declaration
Public Function CompareTo ( _
value As Object _
) As Integer
public int CompareTo(
Object value
)
Parameters
- value
Type: System.Object
An object to compare, or nulla null reference (Nothing in Visual Basic).
Return Value
Type: System.Int32
A signed number indicating the relative values of this instance and value.
Value |
Description |
---|---|
A negative integer |
This instance is less than value. |
Zero |
This instance is equal to value. |
A positive integer |
This instance is greater than value. -or- value is nulla null reference (Nothing in Visual Basic). |
Implements
Remarks
Any instance of Guid, regardless of its value, is considered greater than nulla null reference (Nothing in Visual Basic).
value must be nulla null reference (Nothing in Visual Basic) or an instance of Guid; otherwise, an exception is thrown.
Examples
The following code sample demonstrates how to attach and read a Guid object as an attribute on a user-defined class or interface.
Imports System.Runtime.InteropServices
' Guid for the interface IMyInterface.
<Guid("F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4")> _
Interface IMyInterface
Sub MyMethod()
End Interface
' Guid for the coclass MyTestClass.
<Guid("936DA01F-9ABD-4d9d-80C7-02AF85C822A8")> _
Public Class Example
Implements IMyInterface
Public Sub MyMethod() Implements IMyInterface.MyMethod
End Sub
Public Shared Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock)
Dim IMyInterfaceAttribute As Attribute = Attribute.GetCustomAttribute(GetType(IMyInterface), GetType(GuidAttribute))
' The Value property of GuidAttribute returns a string.
outputBlock.Text += String.Format("IMyInterface Attribute: " + CType(IMyInterfaceAttribute, GuidAttribute).Value) & vbCrLf
' Using the string to create a guid.
Dim myGuid1 As New Guid(CType(IMyInterfaceAttribute, GuidAttribute).Value)
' Using a byte array to create a guid.
Dim myGuid2 As New Guid(myGuid1.ToByteArray())
' Equals is overridden and so value comparison is done though references are different.
If myGuid1.Equals(myGuid2) Then
outputBlock.Text &= "myGuid1 equals myGuid2" & vbCrLf
Else
outputBlock.Text &= "myGuid1 not equals myGuid2" & vbCrLf
End If
' Equality operator can also be used to determine if two guids have same value.
If myGuid1.ToString() = myGuid2.ToString() Then
outputBlock.Text &= "myGuid1 == myGuid2" & vbCrLf
Else
outputBlock.Text &= "myGuid1 != myGuid2" & vbCrLf
End If
End Sub
End Class
' The example displays the following output:
' IMyInterface Attribute: F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4
' myGuid1 equals myGuid2
' myGuid1 == myGuid2
using System;
using System.Runtime.InteropServices;
// Guid for the interface IMyInterface.
[Guid("F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4")]
interface IMyInterface
{
void MyMethod();
}
// Guid for MyTestClass.
[Guid("936DA01F-9ABD-4d9d-80C7-02AF85C822A8")]
public class Example : IMyInterface
{
public void MyMethod() { }
public static void Demo(System.Windows.Controls.TextBlock outputBlock)
{
Attribute IMyInterfaceAttribute = Attribute.GetCustomAttribute(typeof(IMyInterface), typeof(GuidAttribute));
// The Value property of GuidAttribute returns a string.
outputBlock.Text += "IMyInterface Attribute: " + ((GuidAttribute)IMyInterfaceAttribute).Value + "\n";
// Using the string to create a guid.
Guid myGuid1 = new Guid(((GuidAttribute)IMyInterfaceAttribute).Value);
// Using a byte array to create a guid.
Guid myGuid2 = new Guid(myGuid1.ToByteArray());
// Equals is overridden and so value comparison is done though references are different.
if (myGuid1.Equals(myGuid2))
outputBlock.Text += "myGuid1 equals myGuid2" + "\n";
else
outputBlock.Text += "myGuid1 not equals myGuid2" + "\n";
// Equality operator can also be used to determine if two guids have same value.
if (myGuid1 == myGuid2)
outputBlock.Text += "myGuid1 == myGuid2" + "\n";
else
outputBlock.Text += "myGuid1 != myGuid2" + "\n";
}
}
// The example displays the following output:
// IMyInterface Attribute: F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4
// myGuid1 equals myGuid2
// myGuid1 == myGuid2
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.