Код, который вы показали, не добавит ничего странного в строку. Возможно, именно способ копирования и вставки создает проблему. Если это иногда вызывает проблему, посмотрите на источник HTML (щелкните правой кнопкой мыши, Просмотреть источник) и посмотрите, видите ли вы там проблему.
РЕДАКТИРОВАТЬ: Как Хенк узнал, ваш код, очевидно, не все, что кажется. Как вы получили странный символ в исходном коде для начала?
Сказав это, я определенно хотел бы изменить ваш код:
- Я бы сделал так, чтобы имя соответствовало соглашениям об именах .NET
- Я бы взял
Random
в качестве параметра, чтобы вы могли вызывать его несколько раз подряд, не генерируя одну и ту же строку несколько раз
- Я бы создал массив символов правильной длины, заполнил его, а затем создал бы новую строку из нее вместо использования конкатенации строк
- Я бы сделал длину строки для генерации и, возможно, даже параметры набора символов.
Просто чтобы дать некоторое представление о том, как это будет выглядеть - в этом примере я не не превратил набор символов в параметр, но я извлек его из метода:
private const string ValidCharacters =
"abcdefghijkmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ123456789";
public static string GenerateString(Random random, int length)
{
// TODO: Argument validation
char[] chars = new char[length];
for (int i = 0; i < chars.Length; i++)
{
chars[i] = ValidCharacters[random.Next(ValidCharacters.Length)];
}
return new string(chars);
}