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
No answers yet.
Faça login para deixar uma resposta