public static void Main()
var traceids = Enumerable.Range(0, rangemax).Select(a => Util.GetTraceId()).ToList();
var distraceids = traceids.Distinct();
var traceids2 = Enumerable.Range(0, rangemax).Select(a => Util.GetTraceId2()).ToList();
var distraceids2 = traceids2.Distinct();
Console.WriteLine("total:{0}, distinct:{1}", rangemax, distraceids.Count());
Console.WriteLine("total:{0}, distinct:{1}", rangemax, distraceids2.Count());
public static string GetTraceId()
string regionCode = "EU".Substring(0, 1);
int randomNum = (new Random().Next(1, Int32.MaxValue));
string uniqueTraceId = string.Concat(randomNum.ToString(), DateTime.Now.ToString("yyyyMMddHHmmss"));
return string.Concat("CVRTT", regionCode, uniqueTraceId.PadLeft(25, '0'));
public static string GetTraceId2()
string regionCode = "EU".Substring(0, 1);
return string.Concat("CVRTT", regionCode, Guid.NewGuid().ToString());