Сущность Framework - фильтрация запросов с ключами соединения, допускающими нулевое значение - PullRequest
1 голос
/ 23 октября 2010

У меня есть запрос на основе следующего T SQL:

select t1.field1 
       t2.field1, 
       t2.field2, 
       t3.field1,
t3.field2 
from t1 left outer join t2 on t1.t2key = t2.id
        left outer join t3 on t1.t3key = t3.id

В Linq to Entities запрос принимает форму

var query = db.context.t1.include(“t2”).include(“t3”);

Таблица t1 имеет необычную структуруполя t2key и t3key могут иметь значение NULL.Обнуляемые поля не позволяют мне выполнять фильтрацию по любому из полей t2 или t3.

Единственный выход, который я пока вижу, - это вернуть результаты в виде базы данных, прежде чем я выполню фильтрацию.Или есть другой подход, который я должен использовать здесь?

1 Ответ

0 голосов
/ 15 ноября 2010

Для чего это стоило, я в конце концов использовал Linq.Если кто-то еще находится в той же лодке, это синтаксис, который обошел проблему, допускающую обнуление:

query = query.Where (x => x.t1field! = Null? X.t1field.t3field.Contains (model.propvalue): false) .Select (x => x);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...