public virtual async Task <IList <T> > BulkReadAsync(IList <T> entities, params Expression <Func <T, object> >[] whereClauseProperties) { if (entities != null && entities.Count > 0) { try { var properties = GetMemberNames(whereClauseProperties); await _dbContext.BulkReadAsync(entities, bulkConfig => { bulkConfig.UpdateByProperties = properties; bulkConfig.TrackingEntities = true; }); } catch (Exception ex) { _logger.LogError(ex.Message, ex.InnerException); throw; } } return(entities); }