C# icient方法将取决于“特殊”的含义。您应该跟踪/分析您的数据库,并查看sql端的查询结果。然后你可以决定它是否有效。除了数字,是什么让一个字符在这种情况下“特别”。一个大的效率问题是正确匹配字符,但最有效的方法将取决于“特殊”的含义。编辑+1。除了他的
C# icient方法将取决于“特殊”的含义。您应该跟踪/分析您的数据库,并查看sql端的查询结果。然后你可以决定它是否有效。除了数字,是什么让一个字符在这种情况下“特别”。一个大的效率问题是正确匹配字符,但最有效的方法将取决于“特殊”的含义。编辑+1。除了他的,c#,linq-to-sql,C#,Linq To Sql,icient方法将取决于“特殊”的含义。您应该跟踪/分析您的数据库,并查看sql端的查询结果。然后你可以决定它是否有效。除了数字,是什么让一个字符在这种情况下“特别”。一个大的效率问题是正确匹配字符,但最有效的方法将取决于“特殊”的含义。编辑+1。除了他的“检查第一个字符”条件仍然会拉入所有行。我想会的,但这是一个开始:)。正如我们都说过的,他需要使用分析器,然后从那里继续。编辑+1。除了他的“检查第一个字符”条件仍然会拉入所有行。我想会的,但这是一个开始:)。正如我们都说过的,他需要使用分析器
icient方法将取决于“特殊”的含义。您应该跟踪/分析您的数据库,并查看sql端的查询结果。然后你可以决定它是否有效。除了数字,是什么让一个字符在这种情况下“特别”。一个大的效率问题是正确匹配字符,但最有效的方法将取决于“特殊”的含义。编辑+1。除了他的“检查第一个字符”条件仍然会拉入所有行。我想会的,但这是一个开始:)。正如我们都说过的,他需要使用分析器,然后从那里继续。编辑+1。除了他的“检查第一个字符”条件仍然会拉入所有行。我想会的,但这是一个开始:)。正如我们都说过的,他需要使用分析器,然后从那里继续。
public List<User> GetUsersStartingWithNonCharacter()
{
List<User> _dbUsers = this.GetAllUsers();
return _dbUsers.Where(p => ((p.FirstName != null && p.FirstName != string.Empty && !char.IsLetter(p.FirstName.ToLower()[0])) || (p.FirstName == null || p.FirstName == string.Empty))).ToList();
}
public List<Users> GetAllUsers()
{
return (from u in _context.pu_Users
where !u.Is_Deleted
select new User
{
UserId = u.User_Id,
Email = u.Email_Address,
FirstName = u.First_Name,
LastName = u.Last_Name
}).ToList();
}
public List<User> GetUsersStartingWithNonCharacter()
{
List<User> _dbUsers = this.GetAllUsers();
return _dbUsers.Where(p => ((p.FirstName != null && p.FirstName != string.Empty && !char.IsLetter(p.FirstName.ToLower()[0])) || (p.FirstName == null || p.FirstName == string.Empty))).ToList();
}
public IQueryable<Users> GetAllUsers()
{
return from u in _context.pu_Users
where !u.Is_Deleted
select new User
{
UserId = u.User_Id,
Email = u.Email_Address,
FirstName = u.First_Name,
LastName = u.Last_Name
};
}
return _dbUsers.Where(p=>p.FirstName!=String.Empty)
. Where(p => Regex.Match(p.Firstname[0].ToString(), "[a-zA-Z]").Success).ToList();
char.IsLetter(p.FirstName.ToLower()[0])