.NET Framework Class Library
Guid.ToByteArray Method
Returns a 16-element byte array that contains the value of this instance.
Assembly: mscorlib (in mscorlib.dll)
Syntax
Visual Basic
Public Function ToByteArray As Byte()
C#
public byte[] ToByteArray()
Visual C++
public: array<unsigned char>^ ToByteArray()
F#
member ToByteArray : unit -> byte[]
Version Information
.NET Framework
Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0.NET Framework Client Profile
Supported in: 4, 3.5 SP1Portable Class Library
Supported in: Portable Class LibraryPlatforms
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
See Also
Reference
Community Content
kanivarus
Strange behavior
When I convert a a Guid to a byte [] using .ToByteArray(), the first 8 bytes would be in little endian order and the second half would be in big endian order. After running the code below, baKey would contain (little endian) 9A, DD, F5, A2, 16, 1B, C2, 47, (big endian starts here) A0, 72, 52, 83, 95, B5, F3, 02. This seems like a bug.
$0$0
$0String sKey = "A2F5DD9A-1B16-47C2-A072-528395B5F302";$0
$0Guid guidKey = Guid.Parse(sKey);$0
$0byte[] baKey = guidKey.ToByteArray();$0
$0