简体   繁体   English

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

[英]Join two lists in LINQ, writing into other list

I created a linq-select to join two lists. 我创建了一个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();

I get no error, but zugang is always empty if I go through materialneu ... mb5b is definitely not empty, as well as the Mb5b_zugang . 我没有得到任何错误,但zugang始终是空的,如果我去通过materialneu ... mb5b绝对不是空的,还有Mb5b_zugang Also I would prefer to fill a field in my material-list, which already exists(but it is not filled yet). 我也想在我的材料列表中填写一个字段,该字段已经存在(但尚未填写)。 Is this possible? 这可能吗? like 喜欢

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

? It allways gives me an error if I try it like this. 如果我这样尝试,它总是给我一个错误。

I hope it will work: Add Group 我希望它会起作用:添加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();

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM