我是 MVC3 的新手(这就是为什么我买了一本关于它的书,这就是我现在有这个问题的原因!),如果有一个明显的答案,我深表歉意!
我正在关注一个在 MVC3 中构建购物车的简单示例。这本书提倡使用 Ninject 进行依赖注入,我也是新手。一个模型看起来很简单,在本例中为 Product,但在此基础上,我正在努力添加第二个模型并将其显示在显示 Product 模型的同一视图中。我尝试过使用视图模型,但我发现的所有示例都将几个类包装到一个模型中,我不太清楚如何在我的代码中实现它。
班上:
public class Product
{
public int ProductId {get;set;}
public string Name {get;set;}
}
摘要库:
public interface IProductRepository
{
IQueryable<Product> Products {get;}
}
将模型与数据库关联的类:
public class EFDbContext : DbContext
{
public DbSet<Product> Products {get;set;}
}
实现抽象接口的产品存储库:
public class EFProductRepository : IProductRepository
{
private EFDbContext context = new EFDbContext();
public IQueryable<Product> Products
{
get {return context.Products;}
}
}
Ninject 将 IProductRepository 绑定到 ControllerFactory 类中的 EFProductRepository。
控制器:
public class ProductController : Controller
{
private IProductRepository repository;
public ProductController(IProductRepository productRepository)
{
repository = productRepository;
}
public ViewResult List()
{
return View(repository.Products);
}
}
我的问题是将 repository.Products 传递给强类型视图;如果我需要通过另一个实体,这是非常可行的,我将如何实现这一点???