كيفية إنشاء سلسلة عشوائية من الحروف والأرقام في C#؟
مرحباً بالجميع! أنا مطور C# مبتدئ واجهت مشكلة: أحتاج إلى إنشاء سلاسل عشوائية تتكون من حروف (لاتينية، كلا الحالتين) وأرقام. على سبيل المثال، لإنشاء كلمات مرور مؤقتة أو معرفات فريدة.
حاولت استخدام `Random` و `StringBuilder`، لكن النتيجة أربكتني. إليك الكود الخاص بي:
```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();
}
```
يبدو أنه يعمل، لكني لاحظت بعض المشاكل:
1. إذا قمت باستدعاء الطريقة عدة مرات متتالية، أحياناً يتم إرجاع سلاسل متطابقة.
2. لا يوجد ضمان بأن السلسلة ستحتوي على حرف واحد على الأقل ورقم واحد (أحياناً تكون النتيجة أرقاماً فقط).
3. لست متأكداً من مدى أمان هذا الأسلوب.