2010-03-06 7 views
3

Je veux convertir le IEnumerable<Target> de:Comment utiliser LINQ dans cette requête?

public class Target 
{ 
     public Frame BaseFrame; 

     public Rect[] rects; 
} 

Pour IEnumerable<foo> de:

public class foo 
{ 
     public Frame BaseFrame; 
     public Rect rect; 
} 

par exemple étendre le tableau Rect[], IEnumerable<Target> à IEnumerable<foo>, comment écrire LINQ sur cette fonction?

exemple:

séquence

de cible:

t1(rects.Count==2), t2(rects.Count==3) 

sequece de foo (après conversion):

f1, f2, f3, f4, f5 
+0

que 1 rect? __ – kennytm

+0

@KennyTM, oui, exactement dans la classe expanée. – Benny

+0

Si 'rects' contient 4 éléments, il devrait y avoir 4' foo' enumerable? – kennytm

Répondre

5
var q = from t in targets 
     from r in t.Rects 
     select new foo 
     { 
      BaseFrame = t.BaseFrame, 
      Rect = r 
     }; 
Questions connexes