网上也有很多有关Linq To Sql实现Left join的例子,不过使用lambda的不多,就算使用lambda的,也讲得很含糊,本来不需要讲太多废话的,硬要讲得高深莫测,显得好厉害。那些高深的东西在这里我也不讲了,也不会讲,直接上代码就知道了:
当前有两个表,TUsers与TUserInfo,两者通过UserID关联,而TUsers表记录的是必须的数据,而TUserInfo记录是一些附件的数据,因此在TUserInfo中不一定有数据。使用Left Join获取数据:
Lambda表达式如下:
在LinqPad中查看结果,正常显示,查看生成的SQL语句如下:
在代码中测试也可通过;
不过如果觉得这种实现太麻烦,其实也可以使用视图,在视图中实现了两个表的left join,这样就可以简化了linq中的Lambda表达式。