C# list.find和list.Exist始终返回false

C# list.find和list.Exist始终返回false,c#,find,C#,Find,我有一份usr的清单- public static List<usr> usersList = new List<usr>(); 当我为现有usr查找/存在时,我总是得到false not Exist, 我用来查找/存在的代码如下- bool b = usersList.Exists(x => x.name == name); usr student = usersList.Find(x => x.name == name); 在Find/Exist之前检

我有一份usr的清单-

public static List<usr> usersList = new List<usr>();
当我为现有usr查找/存在时,我总是得到false not Exist, 我用来查找/存在的代码如下-

bool b = usersList.Exists(x => x.name == name);
usr student = usersList.Find(x => x.name == name);
在Find/Exist之前检查usersList时,我可以看到列表中存在usr


我做错了什么?

原因是搜索字符串中有空格:

我今天最好去钓鱼


谢谢大家的评论。

您能给我们展示一个演示这种行为的示例列表吗?试试。。。x、 名字。Equalsname@S.L.这应该没什么区别。如果有的话,它可能抛出NullReferenceExceptionString是区分大小写的。您确定所有字母的大小写都相等吗?@S.L:不,不要使用ToUpper或ToLower来比较不区分大小写的字符,而是使用String.Equals中相应的StringComparison。例如:string.Equalsx.name、name、StringComparison.CurrentCultureIgnoreCase。为什么?
bool b = usersList.Exists(x => x.name == name);
usr student = usersList.Find(x => x.name == name);