我已经阅读了有关Subsonic 3.0的LINQ左连接问题的很多帖子,以及如何使用流畅的界面作为替代方案。
然而,无论我尝试在流畅的界面(LeftOuterJoin,LeftJoin ...)中使用哪种类型的连接,查询都是-always-,无论如何,一旦在SQL中翻译,就会进行内部连接
我遇到问题,如果它是一个已知问题,或者我做错了什么,因为大多数搜索都会导致LINQ离开加入问题。
谢谢!
答案 0 :(得分:0)
解决在Subsonic3中的Left Join你只需要在你的linq查询上设置.AsEnumerable()方法。
试试这个
categories.AsEnumerable()或products.AsEnumerable()
答案 1 :(得分:0)
不是最优雅的解决方案,但要克服这个subsonic.core错误,您可以执行以下操作:
SubSonic.Query.SqlQuery query = db.Select.From<Sample>().LeftOuterJoin<SampleResult (SampleTable.SampleIdColumn,SampleResultTable.SampleIdColumn);
//force left join
query.Joins[0].Type = Join.JoinType.LeftOuter;
为我工作