How to: Convert the Results of a LINQ to Entities Query to an Array
Use the ToArray method to create an array from the results of a LINQ to Entities query. Calling ToArray also forces immediate execution of the query. For examples of converting the results of a LINQ to Entities query to a Dictionary or List, see Method-Based Query Syntax Examples: Conversion (LINQ to Entities).
Example
The following example uses the ToArray method to immediately evaluate the query and convert the sequence into an array.
Using AWEntities As New AdventureWorksEntities
Dim products As ObjectQuery(Of Product) = AWEntities.Product
Dim prodArray As Product() = ( _
From product In products _
Order By product.ListPrice Descending _
Select product).ToArray()
Console.WriteLine("The list price from highest to lowest:")
For Each prod As Product In prodArray
Console.WriteLine(prod.ListPrice)
Next
End Using
using (AdventureWorksEntities AWEntities = new AdventureWorksEntities())
{
ObjectQuery<Product> products = AWEntities.Product;
Product[] prodArray = (
from product in products
orderby product.ListPrice descending
select product).ToArray();
Console.WriteLine("Every price from highest to lowest:");
foreach (Product product in prodArray)
{
Console.WriteLine(product.ListPrice);
}
}
Compiling the Code
The example in this topic contains references to objects and namespaces that are defined in the sample project in How to: Create a LINQ to Entities Project in Visual Studio. To compile and run this example, paste it into the Main method.
See Also
Concepts
Method-Based Query Syntax Examples: Conversion (LINQ to Entities)