LinQ Query со многими таблицами, объединениями групп и предложением where (Показать записи с пустыми полями) - PullRequest
0 голосов
/ 06 июля 2018

Таблицы базы данных SQL IMAGE

В этом отношении у Контактов могут быть разные номера телефонов, адреса и адреса электронной почты.

Мне нужен запрос, который показывает [Контактная информация] [Номер телефона] [Электронная почта] [Адрес] и т. Д.

Я не хочу показывать все связанные номера или электронные письма и т. Д. Я хотел бы показать только номер / адрес электронной почты / адрес по умолчанию.

Пока, вот что у меня есть:

var contacts =
            from con in dc.Contacts_Tables
            join com in dc.Companies_Tables on con.Company_ID equals com.Company_ID into comp from compa in comp.DefaultIfEmpty() 
            join em in dc.Email_Tables on con.Contact_ID equals em.Contact_ID into ema from emai in ema.DefaultIfEmpty()  
            join ad in dc.Contact_Address_Tables on con.Contact_ID equals ad.Contact_ID into add from addr in add.DefaultIfEmpty()
            join tel in dc.Contacts_Telephone_Tables on con.Contact_ID equals tel.Contact_ID into tele from telep in tele.DefaultIfEmpty() 

            orderby con.Contact_FirstName
            select new
            {
                ID = con.Contact_ID,
                FirstName = con.Contact_FirstName,
                MidName = con.Contact_Midname,
                Surname = con.Contact_Surname,
                Company = compa.Company_Name,
                Telephone = telep.Telephone_Number,
                Email = emai.Email_Address,
                Address = addr.Address,
                Notes = con.Notes
            };

В этом запросе будет показано несколько строк для контактов, с которыми связано несколько телефонов и т. Д.

Как я могу отфильтровать запрос, чтобы он отображал запросы с "Telephone_Default_ID", даже если этот столбец пуст?

Любое предложение приветствуется.

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