Guid Yapı

Tanım

Genel olarak benzersiz bir tanımlayıcıyı (GUID) temsil eder.

public value class Guid : IComparable, IComparable<Guid>, IEquatable<Guid>, IFormattable
public value class Guid : IComparable, IComparable<Guid>, IEquatable<Guid>, ISpanFormattable
public value class Guid : IComparable, IComparable<Guid>, IEquatable<Guid>, IParsable<Guid>, ISpanFormattable, ISpanParsable<Guid>
public value class Guid : IComparable, IFormattable
public struct Guid : IComparable, IComparable<Guid>, IEquatable<Guid>, IFormattable
public readonly struct Guid : IComparable, IComparable<Guid>, IEquatable<Guid>, ISpanFormattable
public readonly struct Guid : IComparable, IComparable<Guid>, IEquatable<Guid>, IParsable<Guid>, ISpanFormattable, ISpanParsable<Guid>
[System.Serializable]
public struct Guid : IComparable, IFormattable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct Guid : IComparable, IComparable<Guid>, IEquatable<Guid>, IFormattable
type Guid = struct
    interface IFormattable
type Guid = struct
    interface ISpanFormattable
    interface IFormattable
type Guid = struct
    interface IFormattable
    interface IParsable<Guid>
    interface ISpanFormattable
    interface ISpanParsable<Guid>
[<System.Serializable>]
type Guid = struct
    interface IFormattable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type Guid = struct
    interface IFormattable
Public Structure Guid
Implements IComparable, IComparable(Of Guid), IEquatable(Of Guid), IFormattable
Public Structure Guid
Implements IComparable, IComparable(Of Guid), IEquatable(Of Guid), ISpanFormattable
Public Structure Guid
Implements IComparable, IComparable(Of Guid), IEquatable(Of Guid), IParsable(Of Guid), ISpanFormattable, ISpanParsable(Of Guid)
Public Structure Guid
Implements IComparable, IFormattable
Devralma
Öznitelikler
Uygulamalar

Örnekler

Aşağıdaki örnek, bir arabirime ve kullanıcı tanımlı bir sınıfa GUID atamak için sınıfını kullanır System.Runtime.InteropServices.GuidAttribute . yöntemini çağırarak GetCustomAttribute GUID değerini alır ve eşit olup olmadıklarını belirlemek için diğer iki GUID ile karşılaştırır.

using namespace System;
using namespace System::Runtime::InteropServices;

// Guid for the interface IMyInterface.
[Guid("F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4")]
public interface class IMyInterface
{
public:
   void MyMethod();
};


// Guid for the coclass MyTestClass.
[Guid("936DA01F-9ABD-4d9d-80C7-02AF85C822A8")]
public ref class MyTestClass: public IMyInterface
{
public:
   virtual void MyMethod(){}
};

int main()
{
   Attribute^ IMyInterfaceAttribute = Attribute::GetCustomAttribute( IMyInterface::typeid, GuidAttribute::typeid );

   // The Value property of GuidAttribute returns a string. 
   System::Console::WriteLine( String::Concat(  "IMyInterface Attribute: ", (dynamic_cast<GuidAttribute^>(IMyInterfaceAttribute))->Value ) );

   // Using the string to create a guid.
   Guid myGuid1 = Guid(dynamic_cast<GuidAttribute^>(IMyInterfaceAttribute)->Value);

   // Using a byte array to create a guid.
   Guid myGuid2 = Guid(myGuid1.ToByteArray());

   // Equals is overridden to perform a value comparison.
   if ( myGuid1.Equals( myGuid2 ) )
      System::Console::WriteLine(  "myGuid1 equals myGuid2" );
   else
      System::Console::WriteLine(  "myGuid1 not equals myGuid2" );

   // Equality operator can also be used to determine if two guids have same value.
   if ( myGuid1 == myGuid2 )
      System::Console::WriteLine(  "myGuid1 == myGuid2" );
   else
      System::Console::WriteLine(  "myGuid1 != myGuid2" );
}
// 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 the coclass MyTestClass.
[Guid("936DA01F-9ABD-4d9d-80C7-02AF85C822A8")]
public class MyTestClass : IMyInterface
{
    public void MyMethod() {}

    public static void Main( string []args )
    {
        GuidAttribute IMyInterfaceAttribute = (GuidAttribute) Attribute.GetCustomAttribute(typeof(IMyInterface), typeof(GuidAttribute));

        System.Console.WriteLine("IMyInterface Attribute: " + IMyInterfaceAttribute.Value );

        // Use the string to create a guid.
        Guid myGuid1 = new Guid(IMyInterfaceAttribute.Value );
        // Use a byte array to create a guid.
        Guid myGuid2 = new Guid(myGuid1.ToByteArray());

        if (myGuid1.Equals(myGuid2))
            System.Console.WriteLine("myGuid1 equals myGuid2");
        else
            System.Console.WriteLine("myGuid1 does not equal myGuid2" );

        // Equality operator can also be used to determine if two guids have same value.
        if ( myGuid1 == myGuid2 )
            System.Console.WriteLine( "myGuid1 == myGuid2" );
        else
            System.Console.WriteLine( "myGuid1 != myGuid2" );
    }
}
// The example displays the following output:
//       IMyInterface Attribute: F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4
//       myGuid1 equals myGuid2
//       myGuid1 == myGuid2
open System
open System.Runtime.InteropServices

// Guid for the interface IMyInterface.
[<Guid "F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4">]
type IMyInterface =
    abstract MyMethod: unit -> unit

// Guid for the coclass MyTestClass.
[<Guid "936DA01F-9ABD-4d9d-80C7-02AF85C822A8">]
type MyTestClass() =
    interface IMyInterface with
        member _.MyMethod() = ()

let IMyInterfaceAttribute = 
    Attribute.GetCustomAttribute(typeof<IMyInterface>, typeof<GuidAttribute>) :?> GuidAttribute

printfn $"IMyInterface Attribute: {IMyInterfaceAttribute.Value}"

// Use the string to create a guid.
let myGuid1 = Guid IMyInterfaceAttribute.Value
// Use a byte array to create a guid.
let myGuid2 = Guid(myGuid1.ToByteArray())

if myGuid1.Equals myGuid2 then
    printfn "myGuid1 equals myGuid2"
else
    printfn "myGuid1 does not equal myGuid2"

// Equality operator can also be used to determine if two guids have same value.
if myGuid1 = myGuid2 then
    printfn "myGuid1 == myGuid2"
else
    printfn "myGuid1 <> myGuid2"

// The example displays the following output:
//       IMyInterface Attribute: F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4
//       myGuid1 equals myGuid2
//       myGuid1 == myGuid2
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 MyTestClass
    Implements IMyInterface

    Public Sub MyMethod() Implements IMyInterface.MyMethod
    End Sub

    Public Shared Sub Main()
        Dim IMyInterfaceAttribute As GuidAttribute = CType(Attribute.GetCustomAttribute(GetType(IMyInterface), GetType(GuidAttribute)),
                                                           GuidAttribute)

        Console.WriteLine("IMyInterface Attribute: " + IMyInterfaceAttribute.Value)

        ' Use the string to create a guid.
        Dim myGuid1 As New Guid(IMyInterfaceAttribute.Value)
        ' Use a byte array to create a guid.
        Dim myGuid2 As New Guid(myGuid1.ToByteArray())

        If myGuid1.Equals(myGuid2) Then
            Console.WriteLine("myGuid1 equals myGuid2")
        Else
            Console.WriteLine("myGuid1 does not equal myGuid2")
        End If 

        ' The equality operator can also be used to determine if two guids have same value.
        If myGuid1.ToString() = myGuid2.ToString() Then
            Console.WriteLine("myGuid1 == myGuid2")
        Else
            Console.WriteLine("myGuid1 != myGuid2")
        End If
    End Sub
End Class
' The example displays the following output:
'       IMyInterface Attribute: F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4
'       myGuid1 equals myGuid2
'       myGuid1 == myGuid2

Özniteliğin GuidAttribute genellikle bir türü COM'a göstermek için bir uygulamada kullanıldığını unutmayın. Bu örneği derlerseniz, oluşturulan derlemede Derleme Kaydı aracını (Regasm.exe) çalıştırarak kayıt defteri (.reg) ve tür kitaplığı (.tlb) dosyaları oluşturabilirsiniz. .reg dosyası, coclass'ı kayıt defterine kaydetmek için kullanılabilir ve .tlb dosyası COM birlikte çalışma için meta veriler sağlayabilir.

Açıklamalar

GUID, benzersiz bir tanımlayıcının gerekli olduğu her yerde tüm bilgisayarlarda ve ağlarda kullanılabilen 128 bitlik bir tamsayıdır (16 bayt). Böyle bir tanımlayıcının yinelenme olasılığı çok düşüktür.

Oluşturucular

Guid(Byte[])

Belirtilen bayt dizisini Guid kullanarak yapının yeni bir örneğini başlatır.

Guid(Int32, Int16, Int16, Byte, Byte, Byte, Byte, Byte, Byte, Byte, Byte)

Belirtilen tamsayıları ve baytları kullanarak yapının yeni bir örneğini Guid başlatır.

Guid(Int32, Int16, Int16, Byte[])

Belirtilen tamsayıları ve bayt dizisini Guid kullanarak yapının yeni bir örneğini başlatır.

Guid(ReadOnlySpan<Byte>)

Belirtilen bayt salt okunur aralığıyla temsil edilen değeri kullanarak yapının yeni bir örneğini Guid başlatır.

Guid(String)

Belirtilen dizeyle temsil edilen değeri kullanarak yapının yeni bir örneğini Guid başlatır.

Guid(UInt32, UInt16, UInt16, Byte, Byte, Byte, Byte, Byte, Byte, Byte, Byte)

Belirtilen işaretsiz tamsayıları ve baytları kullanarak yapının yeni bir örneğini Guid başlatır.

Alanlar

Empty

Değeri sıfır olan yapının salt okunur bir örneği Guid .

Yöntemler

CompareTo(Guid)

Bu örneği belirtilen Guid bir nesneyle karşılaştırır ve göreli değerlerinin bir göstergesini döndürür.

CompareTo(Object)

Bu örneği belirtilen nesne ile karşılaştırır ve göreli değerlerin bir göstergesini döndürür.

Equals(Guid)

Bu örneğin ve belirtilen Guid bir nesnenin aynı değeri temsil edip etmediğini belirten bir değer döndürür.

Equals(Object)

Bu örneğin belirtilen bir nesneye eşit olup olmadığını gösteren bir değeri döndürür.

GetHashCode()

Bu örneğe ilişkin karma kodu döndürür.

NewGuid()

Yapının yeni bir örneğini Guid başlatır.

Parse(ReadOnlySpan<Char>)

GUID değerini temsil eden salt okunur karakter aralığını eşdeğer Guid yapıya dönüştürür.

Parse(ReadOnlySpan<Char>, IFormatProvider)

Bir karakter aralığını bir değere ayrıştırıyor.

Parse(String)

GUID'nin dize gösterimini eşdeğer Guid yapıya dönüştürür.

Parse(String, IFormatProvider)

Bir dizeyi bir değere ayrıştırıyor.

ParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Bir GUID'nin karakter aralığı gösterimini, dizenin belirtilen biçimde olması koşuluyla eşdeğer Guid yapıya dönüştürür.

ParseExact(String, String)

Bir GUID'nin dize gösterimini, dizenin belirtilen biçimde olması koşuluyla eşdeğer Guid yapıya dönüştürür.

ToByteArray()

Bu örneğin değerini içeren 16 öğeli bir bayt dizisi döndürür.

ToString()

Bu örneğin değerinin kayıt defteri biçiminde dize gösterimini döndürür.

ToString(String)

Sağlanan biçim tanımlayıcısına göre bu Guid örneğin değerinin dize gösterimini döndürür.

ToString(String, IFormatProvider)

Sağlanan biçim belirticisi ve kültüre özgü biçim bilgilerine göre sınıfın bu örneğinin Guid değerinin dize gösterimini döndürür.

TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>)

Geçerli GUID örneğini sağlanan karakter aralığına biçimlendirmeye çalışır.

TryParse(ReadOnlySpan<Char>, Guid)

GUID gösterimini içeren karakterlerin belirtilen salt okunur aralığını eşdeğer Guid yapıya dönüştürür.

TryParse(ReadOnlySpan<Char>, IFormatProvider, Guid)

Bir karakter aralığını bir değere ayrıştırmaya çalışır.

TryParse(String, Guid)

GUID'nin dize gösterimini eşdeğer Guid yapıya dönüştürür.

TryParse(String, IFormatProvider, Guid)

Bir dizeyi bir değere ayrıştırmaya çalışır.

TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Guid)

Dizenin belirtilen biçimde olması koşuluyla, GUID'yi temsil eden karakterlerin aralığını eşdeğer Guid yapıya dönüştürür.

TryParseExact(String, String, Guid)

Bir GUID'nin dize gösterimini, dizenin belirtilen biçimde olması koşuluyla eşdeğer Guid yapıya dönüştürür.

TryWriteBytes(Span<Byte>)

Geçerli GUID örneğini bayt aralığına yazmaya çalışır.

İşleçler

Equality(Guid, Guid)

Belirtilen Guid iki nesnenin değerlerinin eşit olup olmadığını gösterir.

GreaterThan(Guid, Guid)

Hangisinin daha büyük olduğunu belirlemek için iki değeri karşılaştırır.

GreaterThanOrEqual(Guid, Guid)

Hangisinin daha büyük veya eşit olduğunu belirlemek için iki değeri karşılaştırır.

Inequality(Guid, Guid)

Belirtilen Guid iki nesnenin değerlerinin eşit olup olmadığını gösterir.

LessThan(Guid, Guid)

Hangisinin daha az olduğunu belirlemek için iki değeri karşılaştırır.

LessThanOrEqual(Guid, Guid)

Hangisinin daha az veya eşit olduğunu belirlemek için iki değeri karşılaştırır.

Belirtik Arabirim Kullanımları

IComparable.CompareTo(Object)

Bu örneği belirtilen Guid bir nesneyle karşılaştırır ve göreli değerlerinin bir göstergesini döndürür.

IFormattable.ToString(String, IFormatProvider)

Sağlanan biçim tanımlayıcısına ve kültüre özgü biçim bilgilerine göre bu örneğin değerinin dize gösterimini döndürür.

ISpanFormattable.TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider)

Geçerli örneğin değerini sağlanan karakter aralığına biçimlendirmeye çalışır.

Şunlara uygulanır