C# 使用or子句链接到SQL Join语句

C# 使用or子句链接到SQL Join语句,c#,linq,linq-to-sql,linq-to-entities,linq-to-objects,C#,Linq,Linq To Sql,Linq To Entities,Linq To Objects,我必须遵循要转换为LINQ的SQL语句 Select F.FooName B.BarName From Foo F Inner Join Bar B on B.BarName = F.FooName OR B.BarName + 'hello' = F.FooName 我在多个条件下看到了带有AND子句的Link中的内部联接,但没有使用OR 以下是我所能得到的 var myresult = from f in Foo join b in Bar

我必须遵循要转换为LINQ的SQL语句

Select
  F.FooName
  B.BarName
From Foo F
Inner Join Bar B on B.BarName = F.FooName OR B.BarName + 'hello' = F.FooName
我在多个条件下看到了带有AND子句的Link中的内部联接,但没有使用OR 以下是我所能得到的

var myresult = from f in Foo
               join b in Bar
                   on new {Name = B.BarName, NamePlus = B.BarName + "hello"} equals
                      new {Name = F.FooName, NamePlus = F.FooName}
               select new { f, b }

显然这是不对的。有人能帮忙吗?

+1;这是正确的方法。作为一般规则,切勿在LINQ to SQL/LINQ to Entities中使用
join
var myresult = from f in foo
               from b in bar
               where b.BarName == f.FooName ||
                     b.BarName + 'hello' == F.FooName
               select new {f, b};