我有3個List對象(A,B,C)變量。他們每個人都有自己的屬性。如何製作多連接的短lambda?
我將它們連接到其他列表D,其中一些屬性與(A,B,C)屬性相同。
這就是我所做的。它適用於我,但我不滿意,因爲我不得不多次寫一些類似的線條。
IList<A> listA;
IList<B> listB;
IList<C> listC;
...
IList<D> listD = listA
.Join(listB,
a=> a.bId, b=> b.Id,
(a, b) => new
{
aId = a.Id,
aName = a.Name,
aSample = a.Sample,
bId = b.Id,
bName = b.Name,
bComment = b.Comment,
cId = b.cId,
})
.Join(listC,
j => j.cId, c => c.Id,
(j, c) => new List<D>()
{
aId = j.aId, // <-- how to not re-write it again
aName = j.aName, // <--
aSample = j.aSample, // <--
bId = j.bId, // <--
bName = j.bName, // <--
bComment = j.bComment, // <--
cId = c.Id,
cName = c.Name,
cInterval = c.Interval
})
.ToList();
我要做的,所以我不需要寫:援助,aName,A樣品,投標,BNAME,bComment;在第二次加入?