今天弄一个Linq to Sql的问题,遇到了一个超级郁闷的事情~
我将一个Lambda表达式用Func的委托装起来查询出来的结果和直接的Lambda表达式的结果不一样。详细还是请看代码。
Func<tbl_SysUser,bool> xx = d=> d.FirstName.Contains("liu") && d.LastName.Contains("un");
var aa1 = contex.tbl_SysUser.Where(xx);
var aa2 = contex.tbl_Sysuser.Where(d=> d.FirstName.Contains("liu") && d.LastName.Contains("un"));
在我的数据表(tbl_SysUser)中存在一条记录为FirstName = "liu" ,LastName="yun" 的记录~
而这里查询出来的结果是
aa1 没有找到这个记录,
aa2 找到了这个记录。
请大家帮我分析分析,为什么会有这个问题出现。~小弟十分感激。
看一下生成的SQL语句吧。