如何使下面的行不区分大小写?
drUser["Enrolled"] =
(enrolledUsers.FindIndex(x => x.Username == (string)drUser["Username"]) != -1);
我今天早些时候得到了一些建议,建议我使用:
x.Username.Equals((string)drUser["Username"], StringComparison.OrdinalIgnoreCase)));
问题是我无法让这个工作起来,我尝试了下面的代码行,它能编译但返回错误的结果,已注册用户显示为未注册,未注册用户显示为已注册。
drUser["Enrolled"] =
(enrolledUsers.FindIndex(x => x.Username.Equals((string)drUser["Username"],
StringComparison.OrdinalIgnoreCase)));
有人能指出问题吗?
drUser["Enrolled"]
应该是什么数据类型?它看起来像一个布尔值,但FindIndex()
返回索引。如果该用户的索引为0,则返回0,这可能是false。而实际上它是true。在这种情况下,Exists()
方法可能更好。 - drharris