C# 如何使用C检查列表中是否存在值

C# 如何使用C检查列表中是否存在值,c#,asp.net,C#,Asp.net,下面的代码为我提供了新ASP.NET MVC5标识的id和名称列表: var identityStore = new IdentityStore(); var users = ( from user in identityStore.DbContext.Set<User>() select new { id = u

下面的代码为我提供了新ASP.NET MVC5标识的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; }
}

它适合你的要求吗?您的问题有点不清楚。

如果这是您想要的,您可以使用where语句查询用户名,例如

var users = from user in identityStore.DbContext.Set<User>()
            where user.UserName != null && !user.UserName.Equals(string.Empty)
            select ...
无论如何,这可能是这个答案的重复

IsNullOrEmpty仅在某些情况下有效,因此请小心

或者,如果您只是寻找一个特定的用户名,只需查询它

var users = from user in identityStore.DbContext.Set<User>()
            where user.UserName.Equals("whatever")
            select ...

存在于哪里?你能补充一些解释吗?它有点含糊不清。你是在找var isUserExist=identityStore.DbContext.Set.Anyuser=>user.UserName==Samantha吗?是的,我认为它很完美。我现在就试试。一个小的更正,应该是Anyu=>u.UserName==yourUserName
var users = from user in identityStore.DbContext.Set<User>()
            where user.UserName.Equals("whatever")
            select ...