public static void Main()
generateRandomId("chat", 18);
Console.WriteLine("------------------NEXT EXAMPLE-----------------------");
generateRandomId("chat", 128);
Console.WriteLine("------------------NEXT EXAMPLE-----------------------");
generateRandomId("chat", 150);
Console.WriteLine("------------------NEXT EXAMPLE-----------------------");
public static string generateRandomId(string type, int totalLength) {
string adjustablePart = String.Empty;
string randomPart = Guid.NewGuid().ToString();
int availableLength = totalLength - (type.Length + randomPart.Length);
if (availableLength > 0) {
adjustablePart = new String('a', availableLength);
string assembled = String.Format("{0}-{1}-{2}", type, adjustablePart, randomPart);
Console.WriteLine("Available Length for type: [{0}] and total length: [{1}] = [{2}]", type, totalLength, availableLength);
string trimmedToTotalLength = assembled.Substring(0, totalLength);
Console.WriteLine("Full ID: [{0}]", trimmedToTotalLength);
Console.WriteLine("ID Length: [{0}]", trimmedToTotalLength.Length);
string result = assembled.Substring(0, totalLength);