我们的结构体的一个字段是Guid类型。如何为它生成一个有效值?
当前回答
还有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
其他回答
To生成一个“空的”全0 guid,如00000000-0000-0000-0000-000000000000。
var makeAllZeroGuID = new System.Guid();
or
var makeAllZeroGuID = System.Guid.Empty;
来创建一个具有唯一值的实际guid,这可能是你想要的。
var uniqueGuID = System.Guid.NewGuid();
var guid = new Guid();
嘿,这是一个“有效的”,虽然不是很有用,Guid。
(guid是全0,如果你不知道的话。有时,在你不想使用可空guid的情况下,这是需要指示没有guid的)
Guid id = Guid.NewGuid();
如果您在Reflection c#中使用它,您可以从property属性中获得guid,如下所示
var propertyAttributes= property.GetCustomAttributes();
foreach(var attribute in propertyAttributes)
{
var myguid= Guid.Parse(attribute.Id.ToString());
}
如果你想创建一个“想要的”Guid,你可以这样做
var tempGuid = Guid.Parse("<guidValue>");
其中<guidValue>将是类似1A3B944E-3632-467B-A53A-206305310BAE。
推荐文章
- 实体框架核心:在上一个操作完成之前,在此上下文中开始的第二个操作
- 如何为构造函数定制Visual Studio的私有字段生成快捷方式?
- 如何使用JSON确保字符串是有效的JSON。网
- AppSettings从.config文件中获取值
- 通过HttpClient向REST API发布一个空体
- 如何检查IEnumerable是否为空或空?
- 自动化invokerrequired代码模式
- 在c#代码中设置WPF文本框的背景颜色
- 在c#中,什么是单子?
- c#和Java中的泛型有什么不同?和模板在c++ ?
- c#线程安全快速(est)计数器
- 如何将此foreach代码转换为Parallel.ForEach?
- 如何分裂()一个分隔字符串到一个列表<字符串>
- 如何转换列表<字符串>列表<int>?
- c#对象列表,我如何得到一个属性的和