Hi, your problem is that you are passing list of anonymous objects:
select new
{
p.price,
p.ImageUrl,
p.ProductName
}
But you View expect list of PetsApplication.Models.Products
So instead of creating anonym. object try:
select new Product { //set product properties here}