Как мне выполнить этот SQL-запрос
Select Distinct s.*
from #ScopeIDs x
Join Scopes s on s.ScopeID=x.ScopeID or x.ScopeID is null
в LINQ to SQL? (Этот запрос будет возвращать все области, чей ScopeID присутствует в #ScopeIDs, если только одна из записей в #ScopeIDs не равна нулю, в этом случае он возвращает все области).
«буквальный» перевод не работает, поскольку LINQ не поддерживает объединение с несколькими условиями - код в этих строках ...
From x in ScopeIDs
Join s in Scopes on s.ScopeID equals x.ScopeID or x.ScopeID equals nothing
Distinct Select s
... не компилируется.