我正在尝试构建一个列表,该列表包含一个列表中的所有对象,但如果该对象存在于另一列表中,则会更新特定的属性。
首先,我创建了一个所有可能的“选项”列表。然后,我想更新此列表中的任何项目的“选定”属性,这些项目也存在于我创建的另一个“选项”列表中。我希望下面的代码能起作用,但我得到了异常“对象引用未设置为对象的实例”。
var query = from o in AllOptions
join so in SelectedOptions on o.Code equals so.Code into newOptions
from no in newOptions.DefaultIfEmpty()
select new Option
{
Name = o.Name,
Description = o.Description,
Code = o.Code,
Applicable = o.Applicable,
Selected = no.Selected
};