I am writing an application in MVC2 using Entity Framework 

As I know ViewModel has to contain only data without any logic to database. Suppose I have `Product` class that is ADO.NET entity that has `EntityCollection<ProductToStatus>` when `ProductToStatus` is many-to-many table. I have `ProductModel` (that takes `Product` in its .ctor) which is passed to `View`. 

```
public class ProductModel
{
    ....
    public Product Item {get; private set;}
    ...
    public ProductModel(Product item)
    {
         ...
         this.Item = item;
         ...
    }
}

```

In `View` I need to render all statuses of the product, so to do it I need to query the DB by `item.ProductToStatus.Select(s=>s.ProductStatus).ToList();` in the `ProductModel`, but this sends request to the DB and thus does it violates the MVC principle?

Is this OK or I need to do something?