在LINQ中加入两个列表,写入其他列表

时间:2014-04-10 07:14:54

标签: c# linq

我创建了一个linq-select来加入两个列表。

var materialneu =
        (from material in ma
        join mb5b in mb
        on material.Mat_matwerk equals mb5b.Mb5b_matwerk
        into grouping
        from mb5b2 in grouping.DefaultIfEmpty()
        select new {material, zugang = (mb5b2 == null ? string.Empty : mb5b2.Mb5b_zugang.ToString())}).ToList();

我没有收到任何错误,但如果我通过zugangmaterialneu总是空的... mb5b绝对不是空的Mb5b_zugang。 此外,我更愿意在我的材料清单中填写一个已存在的字段(但尚未填写)。 这可能吗? 喜欢

select new {material, material.zugang = mb5b3.Mb5b_zugang} 

? 如果我这样尝试,它总是给我一个错误。

1 个答案:

答案 0 :(得分:1)

我希望它能奏效:添加Group

var materialneu =
    (from material in ma
    Group join mb5b in mb
    on material.Mat_matwerk equals mb5b.Mb5b_matwerk
    into grouping        
    from mb5b2 in grouping.DefaultIfEmpty()
    select new {material, zugang = (mb5b2 == null ? string.Empty : mb5b2.Mb5b_zugang.ToString())}).ToList();