What is wrong with using DateTime.Now. as main part of Unique ID?
I used to use RNGCryptoServiceProvider to generate string-based Order ID’s, but, there were 4 instances where [email protected]$%^*()_- would generate an already-existing Order ID.