GUID stands for Global Unique Identifier. A GUID is a 128-bit integer [16 bytes] that you can use across all computers and networks wherever a unique identifier is required.
Here are some frequently asked questions about GUIDs.
How many GUIDs in Microsoft Windows can one computer generate without rolling over or running out?
Without getting into detail, let me tell you there are 2^122 or 5,316,911,983,139,663,491,615,228,241,121,400,000 possible combination.
Reason is beyond the scope of this article.
Which class in .NET Framework is used to generate Guid?
System.GUID class represents a GUID in .NET Framework.
How can we generate GUID with SQL Server?
We can generate GUID in Sql Server with the help of NEWID[] function
Which namespace must be referenced to utilize the GUID attribute?
System.Runtime.InteropServices namespace must be referenced to utilize the GUID attribute.
This can be done as shown in following code,
- usingSystem;
- usingSystem.Runtime.InteropServices;
- namespaceTESTGUID{
- [Guid["9245fe4a-d402-451c-b9ed-9c1a04247482"]]
- classExample{
- }
- }
Generating GUID in .NET Framework using C#
We can generate GUID by calling following code snippet. As you can see from this code, we use Guid.NewGuid[] method to generate a new GUID in C#.
- usingSystem;
- usingSystem.Collections.Generic;
- usingSystem.Linq;
- usingSystem.Text;
- namespaceConsoleApplication5{
- classProgram{
- staticintMain[string[]args]{
- Guidobj=Guid.NewGuid[];
- Console.WriteLine["NewGuidis"+obj.ToString[]];
- Console.ReadLine[];
- return-1;
- }
- }
- }
A common mistake done by C# developers is to create an object of GUID and trying to print that.
The following code snippet reflects that mistake.
- usingSystem;
- usingSystem.Collections.Generic;
- usingSystem.Linq;
- usingSystem.Text;
- namespaceConsoleApplication5{
- classProgram{
- staticintMain[string[]args]{
- Guidobj=newGuid[];
- Console.WriteLine["NewGuidis"+obj.ToString[]];
- Console.ReadLine[];
- return-1;
- }
- }
- }