Запрос LinQ to Xml и отображение пустых элементов - PullRequest
0 голосов
/ 17 октября 2011

У меня есть следующий Xelemnt, в котором содержится запрос linq.Запрос работает нормально, но я хочу иметь возможность вернуть пустой элемент рекрутера, если в списке рекрутеров (List<recruiters>) для конкретного человека нет рекрутеров.Есть ли какой-нибудь простой способ сделать это, не проверяя, существует ли элемент рекрутера для конкретного человека после создания xml и, если нет, то добавление его?

XElement Person =
                    new XElement("Person",
                    new XElement("title", ""),
                    new XElement("id",""),
                    new XElement("url", ""),
                     (from Recruiter r in recruiters
                        where r.id == p.id
                        select new XElement("Recruiter",
                        new XElement("recruitername", r.recruitername),
                        new XElement("recruiteremail", r.recruiteremail),
                        new XElement("recruiterphone"))));

1 Ответ

1 голос
/ 17 октября 2011

Возможно, вы захотите взглянуть на метод DefaultIfEmpty класса Enumerable. * 1002 MSDN *

XElement defaultRecruiter = new XElement("Recruiter");
XElement Person =
                new XElement("Person",
                new XElement("title", ""),
                new XElement("id",""),
                new XElement("url", ""),
                 (from Recruiter r in recruiters
                    where r.id == p.id
                    select new XElement("Recruiter",
                    new XElement("recruitername", r.recruitername),
                    new XElement("recruiteremail", r.recruiteremail),
                    new XElement("recruiterphone"))).DefaultIfEmpty(defaultRecruiter));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...