如何使用 C# 检查列表中是否存在值
本文关键字:是否 存在 列表 何使用 检查 | 更新日期: 2023-09-27 18:37:05
我有以下代码,它为我提供了来自新 ASP.NET MVC5 Identity的ID和名称列表:
var identityStore = new IdentityStore();
var users =
(
from user in identityStore.DbContext.Set<User>()
select new
{
id = user.Id,
name = user.UserName
}
);
我如何修改它以允许我检查用户名是否存在?
下面是用户类:
public class User : IUser
{
public User();
public User(string userName);
[Key]
public string Id { get; set; }
public virtual ICollection<UserLogin> Logins { get; set; }
public virtual UserManagement Management { get; set; }
public virtual ICollection<UserRole> Roles { get; set; }
public string UserName { get; set; }
}
if(identityStore.DbContext.Set<User>().Any(u => UserName == "yourUserName"))
{
// user exists
}
else
{
// user does not exist
}
它适合您的要求吗?你的问题有点不清楚。
您可以使用
where 语句查询用户名,如果这是您想要的,例如
var users = from user in identityStore.DbContext.Set<User>()
where user.UserName != null && !user.UserName.Equals(string.Empty)
select ...
无论如何,它可能是这个答案 LINQ 语法的副本,其中字符串值不为 null 或为空
字符串。IsNull或Empty只在某些情况下起作用,所以要小心!
或者,如果您只是查找特定的用户名,只需查询它
var users = from user in identityStore.DbContext.Set<User>()
where user.UserName.Equals("whatever")
select ...