public async Task LinkIdentifierMappingsAsync(CdcValueIdentifierMappingCollection coll, IStringIdentifierGenerator idGen) { coll.AddAsync(GlobalId == default, async() => new CdcValueIdentifierMapping { Value = this, Property = nameof(GlobalId), Schema = "Legacy", Table = "Address", Key = this.CreateIdentifierMappingKey(), GlobalId = await idGen.GenerateIdentifierAsync <AddressCdc>().ConfigureAwait(false) }); coll.AddAsync(GlobalAlternateAddressId == default && AlternateAddressId != default, async() => new CdcValueIdentifierMapping { Value = this, Property = nameof(GlobalAlternateAddressId), Schema = "Legacy", Table = "Address", Key = AlternateAddressId.ToString(), GlobalId = await idGen.GenerateIdentifierAsync <AddressCdc>().ConfigureAwait(false) }); }
public async Task LinkIdentifierMappingsAsync(CdcValueIdentifierMappingCollection coll, IStringIdentifierGenerator idGen) { coll.AddAsync(GlobalId == default, async() => new CdcValueIdentifierMapping { Value = this, Property = nameof(GlobalId), Schema = "Legacy", Table = "Person", Key = this.CreateIdentifierMappingKey(), GlobalId = await idGen.GenerateIdentifierAsync <PersonCdc>().ConfigureAwait(false) }); Addresses?.ForEach(async item => await item.LinkIdentifierMappingsAsync(coll, idGen).ConfigureAwait(false)); }