c#如何创建一个Guid值?

结构体的一个字段是Guid类型。如何为它生成一个有效值?

502992 次浏览
Guid id = Guid.NewGuid();

Guid.NewGuid()创建一个新的随机向导。

Guid.NewGuid ()将创建一个

有两种方法

var guid = Guid.NewGuid();

var guid = Guid.NewGuid().ToString();

两者都使用Guid类,第一个创建Guid对象,第二个创建Guid字符串。

var guid = new Guid();

嘿,这是一个“有效的”,虽然不是很有用,Guid。

(guid是全0,如果你不知道的话。有时,在你不想使用可空guid的情况下,这是需要指示没有guid的)

System.Guid desiredGuid = System.Guid.NewGuid();

来创建一个“空的”全0 guid,如00000000-0000-0000-0000-000000000000

var makeAllZeroGuID = new System.Guid();

var makeAllZeroGuID = System.Guid.Empty;

来创建一个具有唯一值的实际guid,这可能是你想要的。

var uniqueGuID = System.Guid.NewGuid();

如果你想创建一个“想要的”Guid,你可以这样做

var tempGuid = Guid.Parse("<guidValue>");

其中<guidValue>可能是1A3B944E-3632-467B-A53A-206305310BAE

如果您在Reflection c#中使用它,您可以从property属性中获得guid,如下所示

var propertyAttributes= property.GetCustomAttributes();
foreach(var attribute in propertyAttributes)
{
var myguid= Guid.Parse(attribute.Id.ToString());
}




还有ShortGuid——c#中一个更短和url友好的GUID类。这是 可作为Nuget。更多信息在这里.

.
PM> Install-Package CSharpVitamins.ShortGuid

用法:

Guid guid = Guid.NewGuid();
ShortGuid sguid1 = guid; // implicitly cast the guid as a shortguid
Console.WriteLine(sguid1);
Console.WriteLine(sguid1.Guid);

这将生成一个新的guid,使用该guid创建一个ShortGuid,并在控制台上显示两个等价的值。结果可能是这样的:

ShortGuid: FEx1sZbSD0ugmgMAF_RGHw
Guid:      b1754c14-d296-4b0f-a09a-030017f4461f

这真的很简单。. net框架提供了一个内置函数来创建和解析guid。这在System名称空间和静态Guid类中可用。

要创建一个GUID,只需使用下面的代码:

var newGuid = System.Guid.NewGuid();

要将GUID字符串解析为GUID,使用下面的代码:

var parsedGuid = System.Guid.Parse(guidString);

如果您只想创建一个新的指南,并在应用程序中使用它,只需在线使用在线GUID生成器工具之一来创建一个新的指南。