I assume that you are referring to EF Code First approach to creating an Entity Model.
If I'm right, your conflicted by the common practice of using Entities (Table mapped classes) as Models to your Views.
I often use Entities as Models when I first scaffold a page. But As you've found, they are rarely appropriate and I often find myself migrating to more Robust Models.
1) I recommend you create a class library in your Models Directory. Embed make several Entities members of your class.
Forexample, you can have a CustomeActivityModel which also has as members of Customers, Sales, and Orders.
class CustomeActivityModel
{
Customers CustomerList { get; set; }
Sales SalesList { get; set; }
Orders OrdersList { get; set; }
}
within you Controller, you would populate them
ViewResult Index()
{
CustomeActivityModel Model = new CustomeActivityModel();
Model.CustomerList EFContext.Customers;
Model.SalesList EFContext.Sales;
Model.OrdersList EFContext.Orders;
Return View(Model);
}
or alternatively, you can use EF's Linq ability to include Entities that have key relationships (assuming Sales has foreign key for Customers and Orders)
ViewResult Index()
{
Model = EFContext.Sales.include("Customers").include("Orders");
Return View(Model);
}