如果我使用下面的简单代码从字符串生成Guid,那么当我使用相同的字符串生成Guid时,该Guid的值是否总是相同?
Guid Guid1 = new Guid(Data.GetHash(txtName.Text.Trim()));
答案 0 :(得分:1)
即使版本4的GUID算法(基本上说“将版本设置为4并用随机或伪随机数填充其他所有内容”)也不能保证是不可预测的,因为该算法没有指定随机数的质量。数字生成器(并且该生成器在密码学上也不强)。
如果要使用随机数生成器,请使用随机数生成器。
答案 1 :(得分:-1)
如果查看Guid()对象的构造函数,您会发现它采用特定格式的字符串并将其转换为Guid对象。
其中的相同字符串应产生相同的Guid()输出。
https://docs.microsoft.com/en-us/dotnet/api/system.guid?view=netframework-4.7.2