var list = (from i in _dataContext.aspnet_Users.Include("aspnet_Membership") where i.UserName.Contains(userName) select i ).ToList();
如果userName=""
那么什么都没有返回。如果空字符串然后返回所有记录,我该怎么做?
做:
var list =
(from i in _dataContext.aspnet_Users.Include("aspnet_Membership")
where string.IsNullOrEmpty(userName)
|| i.UserName.Contains(userName)
select i ).ToList();
有趣的事实:System.Data.Linq.SqlClient 命名空间包含一些非常有用的辅助方法。
您可以使用 SqlMethods.Like 函数,如果将空字符串传递给它,它将返回所有结果。
前任:
(from i in _dataContext.aspnet_Users.Include("aspnet_Membership")
where SqlMethods.Like(i.UserName, "%" + userName + "%")
select i).ToList();