Поиск по нескольким полям / объединениям в Linq to Entity

def strip_end(text, suffix):
    if not text.endswith(suffix):
        return text
    return text[:len(text)-len(suffix)]
0
задан Gargoyle 13 July 2018 в 18:55
поделиться

1 ответ

Хорошо, я понял это. Как указал Герт, если бы отношения были настроены, это было бы необязательно, но я отправляю все еще для людей, которые просто делают Linq-to-SQL, которые спотыкаются на это.

var byContactName = from s in context.Lab_SubSpace.AsNoTracking()
    from w1 in context.Worker.Where(w => w.WWID == s.Alt_Contact).DefaultIfEmpty()
    from w2 in context.Worker.Where(w => w.WWID == s.Main_Contact).DefaultIfEmpty()
    from w3 in context.Worker.Where(w => w.WWID == s.IT_Contact).DefaultIfEmpty()
    from w4 in context.Worker.Where(w => w.WWID == s.PPHW_Contact).DefaultIfEmpty()
    from w5 in context.Worker.Where(w => w.WWID == s.Capital_Contact).DefaultIfEmpty()
    from w6 in context.Worker.Where(w => w.WWID == s.Technical_Contact).DefaultIfEmpty()
    where w1.Full_Name.ToLower().Contains(text) || w1.IDSID.ToLower().Contains(text) ||
        w2.Full_Name.ToLower().Contains(text) || w2.IDSID.ToLower().Contains(text) ||
        w3.Full_Name.ToLower().Contains(text) || w3.IDSID.ToLower().Contains(text) ||
        w4.Full_Name.ToLower().Contains(text) || w4.IDSID.ToLower().Contains(text) ||
        w5.Full_Name.ToLower().Contains(text) || w5.IDSID.ToLower().Contains(text) ||
        w6.Full_Name.ToLower().Contains(text) || w6.IDSID.ToLower().Contains(text)
    select s.Lab_Space_Id;
0
ответ дан Gargoyle 17 August 2018 в 12:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: