internal override City GetEntity(StorageContext context, ICity data) { var county = context.Set <County>() .Where(x => x.Name.Equals(data.County.Name)) .FirstOrDefault(); var city = new City { Name = data.Name, }; if (county == null) { county = EntityFactory.CreateCounty(data.County); } city.CountyId = county.Id; city.County = county; return(city); }
internal override async Task <City> GetEntityAsync(StorageContext context, ICity data, CancellationToken cancellationToken) { var county = await context.Set <County>() .Where(x => x.Name.Equals(data.County.Name)) .FirstOrDefaultAsync(cancellationToken) .ConfigureAwait(continueOnCapturedContext: false); var city = new City { Name = data.Name, }; if (county == null) { county = EntityFactory.CreateCounty(data.County); } city.CountyId = county.Id; city.County = county; return(city); }