var list = (from i in _dataContext.aspnet_Users.Include("aspnet_Membership") where i.UserName.Contains(userName) select i ).ToList();
如果userName=""
则没有任何回报。如果空字符串然后返回所有记录,我怎么能这样做?
答案 0 :(得分:7)
执行:
var list =
(from i in _dataContext.aspnet_Users.Include("aspnet_Membership")
where string.IsNullOrEmpty(userName)
|| i.UserName.Contains(userName)
select i ).ToList();
答案 1 :(得分:2)
有趣的事实:System.Data.Linq.SqlClient命名空间包含一些非常有用的辅助方法。
你可以使用SqlMethods.Like函数,如果传递一个空字符串,它将返回所有结果。
例如:
(from i in _dataContext.aspnet_Users.Include("aspnet_Membership")
where SqlMethods.Like(i.UserName, "%" + userName + "%")
select i).ToList();