¿Cómo generar una cadena aleatoria de letras y números en C#?
¡Hola a todos! Soy un desarrollador principiante de C# y estoy escribiendo una pequeña aplicación para generar contraseñas temporales. Necesito crear cadenas aleatorias que consistan en letras latinas (a-z, A-Z) y dígitos (0-9). La longitud de la cadena debe ser variable, por ejemplo, 8 o 12 caracteres.
Intenté usar la clase estándar Random, pero me encontré con un problema: las cadenas no resultan muy aleatorias y, a veces, incluso se repiten cuando se llama al método rápidamente. Aquí está mi código actual:
```csharp
public static string GenerateString(int length)
{
string chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
string result = "";
Random random = new Random();
for (int i = 0; i < length; i++)
{
int index = random.Next(chars.Length);
result += chars[index];
}
return result;
}
```
El método funciona, pero noté que si lo llamo varias veces seguidas, los primeros caracteres a menudo coinciden. También me preocupa que estoy creando una nueva instancia de Rand