private EntityCollection LoadEntityCollection(ImportParameters parameters, EntitySchema rootSchema, IEnumerable <ColumnExpression> expressions) { var entityCollection = new EntityCollection(UserConnection, rootSchema); var query = rootSchema.CreateSelect(UserConnection, rootSchema.Columns, true, out var columnMapping); AddJoinToBufferedTable(query, expressions, columnMapping); AddSessionIdCondition(parameters.ImportSessionId, query); using (var dbExecutor = UserConnection.EnsureDBConnection()) { using (var dataReader = query.ExecuteReader(dbExecutor)) { entityCollection.Load(dataReader, columnMapping); } } return(entityCollection); }