Как создать «код активации» и сохранить его в базе данных SQL Server 2005 - PullRequest
2 голосов
/ 07 мая 2011

Я делаю веб-приложение, которое при регистрации пользователя случайным образом создает код активации и помещает его в базу данных.Затем веб-приложение отправит его пользователю по электронной почте.Как бы я это сделал?и какой тип данных сервера SQL я бы использовал?Я хочу, чтобы код активации был не длиннее 12 символов числа.пожалуйста, кто-нибудь может мне помочь

1 Ответ

0 голосов
/ 07 мая 2011

Вероятно, наиболее распространенным подходом будет использование Guid. Он не будет вмещаться в 12 символов, хотя для базы 64 это будет 22 символа, что не соответствует вашим потребностям. Если вам действительно нужно это коротко, то, что я, вероятно, сделаю, это закодирую новый Guid с помощью base64 и просто возьму оставшиеся 12 символов, а затем убедитесь, что он уникален.

var guid = Guid.NewId();
string str = ConvertToBase64(guid.ToByteArray());
return str.Substr(0, 12);

Обратите внимание, что вы должны убедиться, что этот код уникален, выполнив поиск в вашей базе данных. Диапазон мал, чтобы обеспечить уникальность. Возможно, вам было бы лучше просто смягчить требование на 12 символов, но я не знаю ваше приложение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...