- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我被困在尝试为给定用户名生成密码的情况下。
我通过用户的姓氏 + 名字的第一个字母,根据用户通过 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 个匹配名字怎么办?我不知道如何检查剩余字符是否具有唯一的用户名。
关于如何实现这一目标的任何想法?提前致谢。
最佳答案
如果应用程序想要避免错误,则需要从 OP 获得更多信息,但与此同时,这应该可以解决手头的问题。
//Store the first possible name.
var possibleUsername = string.Format("{0}{1}", tbLname.Text, tbFname.Text.Substring(0,1))
//Don't hit the database N times, instead get all the possible names in one shot.
var existingUsers = entities.Users.Where(u => u.Username.StartsWith(possibleUsername)).ToList();
//Find the first possible open username.
if (existingUsers.Count == 0) {
//Create the user since the username is open.
} else {
//Iterate through all the possible usernames and create it when a spot is open.
for(var i = 1; i < existingUsers.Count; i++) {
if (existingUsers.FirstOrDefault(u => u.Username == string.Format("{0}{1}", tbLname.Text, tbFname.Text.Substring(0, i))) == null) {
//Create the user since the user name is open.
}
}
}
关于c# - 迭代 FirstName、LastName 以创建用户名的技术,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12676873/
我有两个单独收集的同一组学生的姓名列表。有许多打印错误,我一直在使用模糊匹配来链接这两个列表。我 99+% 有 agrep和类似的,但我坚持以下基本问题:我如何匹配(例如)名字“Adrian Bruc
我有一个名字列表,我需要将这些名字从“名字姓氏”转换为“姓氏,名字”。 Barack Obama Donald J. Trump J. Edgar Hoover Beyonce Knowles-Car
我有一栏写满了名字: “姓氏,名字” 我想要另一列,该姓名列表写为: “名字 姓氏” 那么,如何将字符串从“lastName,firstName”切换为“firstName LastName”? 最佳
我正在尝试将包含某人姓名的字符串转换为“Last, First”到“First Last”。 这就是我现在的做法: name = name.Trim name = name.Substring(nam
如何在 Postgres 中将表列数据从“LastName, FirstName”转换为“FirstName LastName”。 因此,如果表列包含“Ona, Lisa”,我希望它返回“Lisa O
我有 python pandas 数据框,由用于执行 python 脚本的 power bi 数据源转换支持提供,其中一列由 lastname, firstname 组成,我需要它由 名字姓氏。 我尝
我有 python pandas 数据框,由用于执行 python 脚本的 power bi 数据源转换支持提供,其中一列由 lastname, firstname 组成,我需要它由 名字姓氏。 我尝
我想对由 ember-data 获取的数组或用户进行排序。我无法弄清楚如何将数组排序为lastName。下面的代码不能完成这项工作。我该如何修复它? app.js App.UsersRoute = E
我尝试在新 API 中合并来自两个 API 的数据,但收到错误未捕获类型错误:无法读取未定义的属性“lastName”。发生这种情况是因为在 API2 中缺少 lastName 时找不到它。在这种情况
在你问之前,是的,我必须使用一个列表。我不能使用 slice 或其他任何东西。所以,我有一个充满结构的列表,但需要根据结构的姓氏变量对列表进行排序。我已经修补了一些东西,但最终没有什么可展示的。我不是
@{DisplayName=Firstname Lastname} 需要只是 'Firstname Lastname' 因为 get-mailbox -identity '@{DisplayName=
将字符串“Parisi, Kenneth”分成“Kenneth”和“Parisi”的最佳方法是什么? 我仍在学习如何使用这些正则表达式解析字符串,但不太熟悉如何将 vars 设置为等于匹配的字符串和匹
在我正在使用的表格中,full_name 列的格式为“Firstname Lastname” 例如。 “约翰·韦斯特” 我正在使用这个: $q="John"; $sql = "SELECT full_
我被困在尝试为给定用户名生成密码的情况下。 我通过用户的姓氏 + 名字的第一个字母,根据用户通过 FirstName 和 LastName 的文本框输入创建用户名。例如,如果用户的名字是“Ronald
我制作了一个包含标签的自定义用户控件。我有 3 个字符串属性:名字、姓氏、全名。 如何设置标签的 text = FullName ? public string firstName {
我试图通过假设名字的形式是 Firstname LaSTLame 来捕捉名字。这适用于下面的代码,但我希望能够捕捉到像 Pär Åberg 这样的国际名称。我找到了一些解决方案,但不幸的是,它们似乎不
我们有一个表,其中有一个名为 fullname 的列,格式为“Lastname, Firstname” 我在表中添加了新列,以便我们可以将姓氏和名字分开,但我不知道该怎么做。下面的代码是我使用的,但“
需要验证全名(名字/姓氏 - 1 个输入字段)。我是这个领域的新手,无法制定正确的语法也许也适用于正则表达式
关闭。这个问题需要debugging details .它目前不接受答案。 编辑问题以包含 desired behavior, a specific problem or error, and th
这个问题已经有答案了: why the string is getting altered after strcat()? (4 个回答) 已关闭 4 年前。 当我编译这段代码时,我第三次要求它在告诉
我是一名优秀的程序员,十分优秀!