Avatar ·

Como gerar uma string aleatória de letras e números em C#?

Olá a todos! Sou um desenvolvedor C# iniciante e me deparei com uma tarefa: preciso gerar strings aleatórias compostas por letras (latim, ambos os casos) e números. Por exemplo, para criar senhas temporárias ou identificadores únicos. Tentei usar `Random` e `StringBuilder`, mas o resultado me incomoda. Aqui está meu código: ```csharp public static string GenerateRandomString(int length) { Random random = new Random(); string chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; StringBuilder result = new StringBuilder(length); for (int i = 0; i < length; i++) { result.Append(chars[random.Next(chars.Length)]); } return result.ToString(); } ``` Parece funcionar, mas notei alguns problemas: 1. Se eu chamar o método várias vezes seguidas, às vezes retornam strings iguais. 2. Não há garantia de que a string conterá pelo menos uma letra e um número (às vezes resulta apenas em números). 3. Não tenho certeza de quão isso