2016-03-30 18 views
1

Bu değeri Linq ifadesinden döndürdüm.Ekstra Numaralama Sarma Makineleri. Net

IEnumerable<IQueryable<IEnumerable<IList<MyDomain>>>> 

kapalı şerit için bir yol var mı tüm ekstra IEnumerable<IQueryable<IEnumerable< yüzden sadece IList<MyDomain> var?

+4

uzantısı yöntemi [ 'SelectMany'] (https://msdn.microsoft.com/en-us/ kullanımı Tüm iç dizileri birleştirmek için kütüphane/system.linq.enumerable.selectmany (v = vs.100) .aspx). – rexcfnghk

+0

teşekkürler bu doğru anwer oldu. cevap verirseniz, doğru cevaplanan soruya işaretlerim – ChampChris

cevap

1

Uzatma yöntemi kullanabilir SelectMany

bir örnek aşağıdaki gibi olabilir:

IEnumerable<IQueryable<IEnumerable<IList<MyDomain>>>> domains = GetDomains(); 

IList<MyDomain> concatenatedDomains = domains.SelectMany(a => 
              a.SelectMany(b => 
               b.SelectMany(
                c => c.Select(d => 
                 d))).ToList(); 
// OR 
IList<MyDomain> concatenatedDomains = (from a in domains 
             from b in a 
             from c in b 
             from d in c 
             select d).ToList()