特定のユーザー名のパスワードを生成しようとしている状況で立ち往生しています。
ユーザーの姓と名の最初の文字によって、ユーザーの入力から FirstName と LastName のテキストボックスを介してユーザー名を作成しています。たとえば、ユーザーの名が「Ronald」で姓が「Test」の場合、データベースにユーザー名を「Testr」として追加します。しかし、別のユーザーの姓が同じで、名がデータベース内の既存のユーザーと同じ名前で始まる場合、次のように名の最初の 2 文字を追加します -
if (entities.Users.Any(a => a.LastName == tbLname.Text && a.FirstName.StartsWith(fname)))
username = (tbLname.Text + tbFname.Text.Substring(0,2)).ToLower();
問題は、最初の 2 文字が名前と一致する場合にのみ機能することです。名前が一致するものが 3 つまたは 4 つある場合はどうなりますか? 残りの文字が一意のユーザー名を持つことを確認する方法がわかりません。
これを達成する方法について何か考えはありますか? 前もって感謝します。