private static IEnumerable <TResult> ExecuteSelectExpression <TResult>( QueryContext queryContext, IEntityType entityType, SelectExpression selectExpression) where TResult : class, new() { var context = ((AtsQueryContext)queryContext); var table = new AtsTable(entityType.AzureTableStorage().Table); var query = context.TableQueryGenerator.GenerateTableQuery(selectExpression); var request = new QueryTableRequest <TResult>( table, query, s => (TResult)context.QueryBuffer .GetEntity(entityType, context.ValueReaderFactory.Create(entityType, s))); return(context.GetOrAddQueryResults(request)); }