На основе следующей ссылки Combine tables using row values as column LINQ C# SQL Я бы объединил два IEnumerables, используя значения строк в качестве столбца. В отличие от написанного, я не использую таблицы с постоянными полями, полученными веб-службой.Объединить значения констант в таблицах с константой LINQ
var element = XDocument.Parse(getstring1);
var dataCode = from item in element.Descendants("Field")
where item.Element("Code").Value == "CODE"
select item.Element("Value");
var dataDescription = from item in element.Descendants("Field")
where item.Element("Code").Value == "DESCRIPTION"
select item.Element("Value");
var resultsSet = dataCode.Zip(dataDescription, Tuple.Create);
element = XDocument.Parse(getstring2);
var dataSizeSet = from item in element.Descendants("Field")
where item.Element("Code").Value == "SIZESET"
select item.Element("Value");
var dataSizeId = from item in element.Descendants("Field")
where item.Element("Code").Value == "SIZEID"
select item.Element("Value");
var dataSizeLabel = from item in element.Descendants("Field")
where item.Element("Code").Value == "SIZELABEL"
select item.Element("Value");
var resultsLabel = dataSizeSet.ZipThree(dataSizeId, dataSizeLabel, Tuple.Create);
var results = resultsSet.GroupJoin(resultsLabel,
set => set.Item1,
label => label.Item1,
(set, label) => new
{
set.Item1,
set.Item2,
Label01 = label.SingleOrDefault(x => x.Item2.Value == "1").Item3,
Label02 = label.SingleOrDefault(x => x.Item2.Value == "2").Item3,
Label03 = label.SingleOrDefault(x => x.Item2.Value == "3").Item3,
Label04 = label.SingleOrDefault(x => x.Item2.Value == "4").Item3,
Label05 = label.SingleOrDefault(x => x.Item2.Value == "5").Item3,
Label06 = label.SingleOrDefault(x => x.Item2.Value == "6").Item3,
Label07 = label.SingleOrDefault(x => x.Item2.Value == "7").Item3,
Label08 = label.SingleOrDefault(x => x.Item2.Value == "8").Item3,
Label09 = label.SingleOrDefault(x => x.Item2.Value == "9").Item3,
Label10 = label.SingleOrDefault(x => x.Item2.Value == "10").Item3,
Label11 = label.SingleOrDefault(x => x.Item2.Value == "11").Item3,
Label12 = label.SingleOrDefault(x => x.Item2.Value == "12").Item3,
Label13 = label.SingleOrDefault(x => x.Item2.Value == "13").Item3,
Label14 = label.SingleOrDefault(x => x.Item2.Value == "14").Item3,
Label15 = label.SingleOrDefault(x => x.Item2.Value == "15").Item3,
Label16 = label.SingleOrDefault(x => x.Item2.Value == "16").Item3,
Label17 = label.SingleOrDefault(x => x.Item2.Value == "17").Item3,
Label18 = label.SingleOrDefault(x => x.Item2.Value == "18").Item3,
Label19 = label.SingleOrDefault(x => x.Item2.Value == "19").Item3,
Label20 = label.SingleOrDefault(x => x.Item2.Value == "20").Item3
});
УАК «результаты», если я расширить IEnumerable, не содержит в себе ничего, и получить следующее сообщение об ошибке: «ссылка на объект не указывает на экземпляр объекта».
Есть идеи предложить мне?
Я считаю, что ваш вопрос будет закрыт в ближайшее время как дубликат. Но для будущего - не просто сбрасывайте весь свой код. Добавьте некоторое описание *, что * ваш код делает и предоставляет некоторый xml для воспроизведения вашей проблемы. –
По-моему, это не дубликат, но это интеграция. –
Я не знаю, что вы называете * интеграцией *, но это дубликат http : //stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-and-how-do-i-fix-it? rq = 1 –