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();