Сегодня у меня возникает проблема при создании случайного идентификатора с типом Guid в C#.Сохранять переменные при использовании Тип руководства
Когда я хочу случайный идентификатор. И я использую:
obj.ID = new Guid(txtID.Text); //ID type Guid
Но при запуске программы. Автоматическая генерация 1 случайная случайная, когда я сажу карту.
Я хочу, когда салфетки карты. Он будет случайным идентификатором и сохранит эти значения, пока я его не удалю.
Редактировать: Мой английский не очень хорошо. Извини за это.
Вот мой код генерировать Guid и установить значение текстового поля:
mReader.CurrentCardIDBlock1 = System.Guid.NewGuid().ToString("N");
mReader.CurrentCardIDBlock2 = System.Guid.NewGuid().ToString("N");
txtID.Text = mReader.CurrentCardIDBlock1.ToString();
String strCompont = txtID.Text;
onWriteDataBlock1(strCompont); //Write data to mifare card in block 1 sector 14
MessageBox.Show("Write data success");
Если swipe card 1
>random id[any value]
.
Продолжение swipe card 1
>random id[any value]
. =>incorrect
.
Я хочу swipe card 1
>random id[value 1]
, если я возьму с собой считыватель RFID и поставлю снова.
До тех пор, пока значения возврата не будут random id[value 1]
в card 1
для меня.
Пробел card 2
>random id[any value]
. Swipe card 3
>random id[any value]
. => Все нормально.
Я думаю это легко представить. Благодаря @Preston Guillot.
спасибо !!!
'new Guid (txtID.Text)' не создает случайный GUID - он анализирует текстовое значение как GUID. 'Guid.NewGuid()' создает новый GUID, который не является «случайным», с криптографической точки зрения, но является * уникальным *. –
Preston прав, кроме txtID всегда будет одинаковым ... – yams
Спасибо за @PrestonGuillot и @Robert Paulson. В потоке я создал 'mReader.CurrentCardIDBlock1 = Guid.NewGuid();' для создания случайного Guid. Но когда я сажу карточку 'n раз' и другую карту, она показывает' n ID' Guid. Я хочу сохранить ID для 1 карты. При использовании новой карты, она будет случайным другим ID на новую карту. –