[英]Create a random GUID in C# within a specified interval
Using the .NET Framework, is there a way to create a random GUID in C# within a specified interval? 使用.NET Framework,有没有办法在指定的时间间隔内在C#中创建随机GUID? For example, I need a random GUID that is greater than ffffffff-ffff-ffff-ffff-1fffffffffffff and less than ffffffff-ffff-ffff-ffff-2fffffffffffff.
例如,我需要一个大于ffffffff-ffff-ffff-ffff-1fffffffffffff且小于ffffffff-ffff-ffff-ffff-2fffffffffffff的随机GUID。
Use this overload : 使用此重载 :
[CLSCompliantAttribute(false)]
public Guid(
uint a,
ushort b,
ushort c,
byte d,
byte e,
byte f,
byte g,
byte h,
byte i,
byte j,
byte k
)
Guid(0xa,0xb,0xc,0,1,2,3,4,5,6,7)
creates a Guid that corresponds to: Guid(0xa,0xb,0xc,0,1,2,3,4,5,6,7)
创建一个Guid,对应于:
0000000a-000b-000c-0001-020304050607
You can randomize the parameters any way you like. 您可以按照自己喜欢的方式随机化参数。 For example, you can do:
例如,你可以这样做:
var r[] = new byte[] { 1,2,3,4 } // chosen by fair dice rolls
// guaranteed to be random
var guid = new GUID(0xFFFFFFFF, 0xFFFF, 0xFFFF, 0xFFFF, r[1], r[2], r[3], r[4]...
Well, you get the idea. 反正你懂这个意思。 You have to do some bit twiddling to get the fifth parameter right.
你必须做一些小事以使第五个参数正确。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.