类linq空字符串

类linq空字符串,linq,sql-like,contains,Linq,Sql Like,Contains,如果userName=”“则不返回任何内容。如果字符串为空,则如何返回所有记录?执行以下操作: var list = (from i in _dataContext.aspnet_Users.Include("aspnet_Membership") where i.UserName.Contains(userName) select i ).ToList(); 有趣的事实:System.Data.Linq.SqlClient命名空间包含一些非常有用的帮助器方法 您可以使用SqlMethod

如果
userName=”“
则不返回任何内容。如果字符串为空,则如何返回所有记录?

执行以下操作:

var list = (from i in _dataContext.aspnet_Users.Include("aspnet_Membership")  where i.UserName.Contains(userName)  select i ).ToList();

有趣的事实:System.Data.Linq.SqlClient命名空间包含一些非常有用的帮助器方法

您可以使用SqlMethods.Like函数,如果向其传递空字符串,该函数将返回所有结果

例:


请澄清,我不知道你在问什么尼克斯:你说得对,我想得太快了。有趣的事实仍然存在;)
  var list = 
      (from i in _dataContext.aspnet_Users.Include("aspnet_Membership") 
        where string.IsNullOrEmpty(userName)
               || i.UserName.Contains(userName)  
       select i ).ToList();
 (from i in _dataContext.aspnet_Users.Include("aspnet_Membership") 
  where SqlMethods.Like(i.UserName, "%" + userName + "%")
  select i).ToList();