protected override IEnumerable <object> EnumerateReferences(MsBuildConditionalConstruct record) { yield return(record.MsBuildConditionalConstructOtherwiseElement); yield return(record.MsBuildConditionalConstructWhenElementList); }
protected override Expression <Func <MsBuildConditionalConstruct, bool> > FindExisting(MsBuildConditionalConstruct record) => existing => ((existing.MsBuildConditionalConstructOtherwiseElementId == null && record.MsBuildConditionalConstructOtherwiseElementId == null) || (existing.MsBuildConditionalConstructOtherwiseElementId == record.MsBuildConditionalConstructOtherwiseElementId)) && existing.MsBuildConditionalConstructWhenElementListId == record.MsBuildConditionalConstructWhenElementListId;
protected override async Task <MsBuildConditionalConstruct> AssignUpsertedReferences(MsBuildConditionalConstruct record) { record.MsBuildConditionalConstructOtherwiseElement = await _otherwise.UpsertAsync(record.MsBuildConditionalConstructOtherwiseElement); record.MsBuildConditionalConstructOtherwiseElementId = record.MsBuildConditionalConstructOtherwiseElement?.MsBuildConditionalConstructOtherwiseElementId ?? record.MsBuildConditionalConstructOtherwiseElementId; record.MsBuildConditionalConstructWhenElementList = await _whens.UpsertAsync(record.MsBuildConditionalConstructWhenElementList); record.MsBuildConditionalConstructWhenElementListId = record.MsBuildConditionalConstructWhenElementList?.MsBuildConditionalConstructWhenElementListId ?? record.MsBuildConditionalConstructWhenElementListId; return(record); }