我有一个名为copyAgencies的对象,它包含被调用程序中的另一个对象,其中包含有关该程序(名称,ID等)的各种信息。我写了一个foreach循环,删除所有与我通过的id参数不匹配的程序。例如,程序可能包含11个不同的程序,我传入3个id,并想从copyAgencies对象中删除其他8个程序。我如何做到这一点?以下是我的失败代码。从linq中的对象中删除嵌套值
foreach (int id in chkIds){
//copyAgencies.Select(x => x.Programs.Select(b => b.ProgramId == id));
copyAgencies.RemoveAll(x => x.Programs.Any(b => b.ProgramId != id)); //removes all agencies
}
你有什么代码产生? – clcto
为我们提供了更多有关您的课程的信息。据我所知,您希望从“程序”中删除程序,而不是代理机构 –
该代码为我提供了一个代理机构,其中有11个程序与之关联。我想删除不等于我通过的编号 – jpavlov