THIS IS ARCHIVED DOCUMENTATION
Using QueryResults to Retrieve Query Metadata
Using QueryResults to Retrieve Query Metadata
In this article
In this article
You can use the Coveo LINQ GetCoveoQueryResults extension to retrieve an object containing results and query metadata.
This can be used to create a LINQ-based search page instead of querying the server many times to get different results.
How to Use
The following example shows one way to retrieve the QueryResults:
GetCoveoQueryResults example
private QueryResults<SearchResultItem> ExecuteQuery(string p_Query) {
QueryResults<SearchResultItem> results;
ISearchIndex index = ContentSearchManager.GetIndex("Coveo_web_index");
using (var context = index.CreateSearchContext()) {
IQueryable<SearchResultItem> query = context.GetQueryable<SearchResultItem>()
.CoveoOr(p_Query)
.Take(20);
results = query.GetCoveoQueryResults();
}
return results;
}
Custom Result
You can specify your own result type by creating a simple class matching the field name you want to retrieve.
The following example only returns the Date field.
GetCoveoQueryResults example
public class SimplePOCO {
public string Date { get; set; }
}
private QueryResults<SimplePOCO> ExecuteQuery(string p_Query) {
QueryResults<SimplePOCO> results;
ISearchIndex index = ContentSearchManager.GetIndex("Coveo_web_index");
using (var context = index.CreateSearchContext()) {
IQueryable<SimplePOCO> query = context.GetQueryable<SimplePOCO>()
.Take(20);
.GetCoveoQueryResults();
}
return results;
}
For more details, see LINQ QueryResults Example - Introduction