将此Linq代码转换为常规/非linq代码

时间:2013-01-10 22:08:38

标签: linq-to-objects

我是Linq的新手,并且正在处理一个恰恰相反的人的代码。他在下面写了这段代码。我理解代码,但任何人都可以告诉我,如果我可以将代码转换为非linq几乎相同的代码量

public static AType MyFunction() 
{
          return new AType 
          {
              PropertyOfAType = SomeIEnumerable.Select(r => new BType
              {
                  Property1OfBType =  r.GetData(5),
                  Property2OfBType =  r.GetData(6)

              }).ToArray()
          };

}

1 个答案:

答案 0 :(得分:1)

    public static AType MyFunction()
    {
        AType aType = new AType();
        List<BType> bTypes = new List<BType>();
        foreach (var r in SomeIEnumerable)
        {
            bTypes.Add(new BType
            {
                Property1OfBType = r.GetData(5),
                Property2OfBType = r.GetData(6)
            });
        }
        aType.PropertyOfAType = bTypes.ToArray();
        return aType;
    }