views:

47

answers:

1

I want to convert the IEnumerable<Target> of :

public class Target
{
        public Frame BaseFrame;

        public Rect[] rects;
}

To IEnumerable<foo> of :

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

e.g. expand the Rect[] array, IEnumerable<Target> to IEnumerable<foo>, how to write LINQ on this function?

example:

sequence of Target:

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

sequece of foo (after conversion):

f1, f2, f3, f4, f5
+5  A: 
var q = from t in targets
        from r in t.Rects
        select new foo
        {
          BaseFrame = t.BaseFrame,
          Rect = r
        };
leppie