ben bir ebeveyn çocuk tablo ilişki var Katıldı. Aşağıdaki örnekte, Foo'nun bir FooID'si ve bir üst kayda işaret eden bir neblun ParentFooID vardır.Şartlı LINQ
! The Bar masa her zaman üst kaydı ile bağlantılıdır. Bu, sonucu almak için kullandığım SQL'dir.
Select * from Foo f
JOIN Bar b
ON b.FooID =
CASE
WHEN f.ParentFooID is null
THEN f.FooID
ELSE f.ParentFooID
END
Bunu bir LINQ sorgusuna sokmakta zorlanıyorum. Ben bir haç aşağıdaki gibi katılmak önlemek istiyorum:
var q = from f in Foo
from b in Bar
where b.FooID == (f.ParentFooID ?? f.FooID)
Cheers
Daniel
ben den ... senaryodan ve evet, bu (a aday olmayacağını) bir indeks taraması ne yapar hangi katılmak haç neden yok profilli var yüzden bir yapıyor özgün sorgu daha kötü gerçekleştirmek için gidiyor dizin araması – Spruce
En azından değer testi. –