Как объединить два списка <string>в c # с помощью LINQ - PullRequest
2 голосов
/ 28 ноября 2011

У меня есть 2 отдельных атрибута страны в элементе XML z: row, возвращаемых из веб-служб SharePoint.

var homeCountry = (from xml in doc.Descendants(z + "row") select xml.Attribute("ows_Country").Value).Distinct();

    var covCountry = (from xml in doc.Descendants(z + "row")
                      where xml.Attribute("ows_Coverage_x0020_Area_x0020_by_x00").Value != ""
                      select xml.Attribute("ows_Coverage_x0020_Area_x0020_by_x00").Value);

Теперь я хочу объединить оба списка, чтобы получить разные названия страни загрузите доддокс док.

distinctCountriesList.Add("");
        distinctCountriesList.Sort();
        country.DataSource = distinctCountriesList.Distinct();

        country.DataBind();

Ответы [ 4 ]

5 голосов
/ 28 ноября 2011
var distinctCountriesList = homeCountry.Union(covCountry).ToList();
3 голосов
/ 28 ноября 2011
country.DataSource = homeCountry
    .Union(convCountry)
    .ToList();

country.DataBind();
2 голосов
/ 28 ноября 2011

Используйте метод Union .Напротив, Concat не будет фильтровать дубликаты.

0 голосов
/ 28 ноября 2011
var Joinedlist = from hCountry in homeCountry.AsEnumerable()
                 join coCountry in covCountry.AsEnumerable()
                 on coCountry.<column Name> equals hCountry.<column Name>     
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...