0

我有 2 个对象: ParentOne 和 ParentTwo :

class B
    {
        public int id { get; set; }
        public string AtterC { get; set; }
        public string AtterE { get; set; }
        public int AtterG { get; set; }
    }

    class ParentOne
    {
        public string AttA { get; set; }
        public List<B> AttrBList { get; set; }
    }

    //-----------
    class ParentTwo 
    {
        public List<C> AttrCList { get; set; }
    }
    class C
    {
        public int id { get; set; }
        public string name { get; set; }
        public int AtterF { get; set; }
    }

我想加入两个带有 id 的列表类

ParentOne parent1 = get(..)
ParentTwo parent2 = get(..)

     var query = parent1.AttrCList.Join(
            parent2.AttrBList,
            l1 => new { l1.id },
            l2 => new { l2.id },
            (item1, item2) => new
            {
                id= item1.id,
                name = item2.name,
                AtterC = item1.AtterC,
                AtterE  = item1.AtterE,
                AtterG  = item1.AtterG  
            });

但是,我收到关于加入的错误。

谁能帮我?

4

1 回答 1

0

是的,我解决了这个问题

 var res = from item1 in parent1.AttrCList
                  join item2 in AttrCList
                      on item1.id equals item2.id
                  select new
                  {
                         id= item1.id,
                         name = item2.name,
                         AtterC = item1.AtterC,
                         AtterE  = item1.AtterE,
                         AtterG  = item1.AtterG  
                  };

任何人,你知道,更快的解决方案?

于 2019-10-16T12:49:12.417 回答