這太令人沮喪了,並阻止我繼續閱讀ASP.NET MVC
,因爲其餘的主題都建立在這一個之上:我遵循Adam Freeman's book Pro ASP.NET MVC 5.0
這本書,我相信你們中的許多人也研究過它。所以我已經完成了第7章,這是行不通的。我可以調出該網站,但頁面右側沒有顯示任何產品。Ninject無法找到並正確綁定到存儲庫
至於我可以在這裏調試是我發現: ProductController
沒有返回的產品,這點我覺得是因爲Ninject
工作不正常 https://github.com/babakinks/MVCExample/blob/master/SportsStore/SportsStore.WebUI/Controllers/ProductController.cs
public class ProductController : Controller
{
private IProductsRepository repository;
public int PageSize = 4;
public ProductController(IProductsRepository productRepository)
{
this.repository = productRepository;
}
public ViewResult List(int page = 1)
{
ProductsListViewModel model = new ProductsListViewModel
{
Products = repository.Products
.OrderBy(p => p.ProductID)
.Skip((page - 1) * PageSize)
.Take(PageSize),
PagingInfo = new PagingInfo
{
CurrentPage = page,
ItemsPerPage = PageSize,
TotalItems = repository.Products.Count()
}
};
return View(model);
}
}
而且我不認爲這是因爲我的數據庫中沒有足夠的數據,因爲我可以查詢它們。
只有一點:我不得不在Global.asax.cs
private void RegisterDependencyResolver()
{
var kernel = new StandardKernel();
// you may need to configure your container here?
//RegisterServices(kernel);
DependencyResolver.SetResolver(new NinjectDependencyResolver(kernel));
}
添加此方法如果我不這樣做,我會得到一個parameter-less constructor error
爲ProductsController
如果你想看看,這裏是整個事情: https://github.com/babakinks/MVCExample
非常感謝您花時間測試應用程序。您能否詳細解釋一下這個問題:「您那邊有一個調試問題。」 – Bohn 2014-12-09 20:47:30
@Blake:好吧,我克隆了你的git項目,建立了它,在數據庫中放入了一些行,它工作。你確定你有數據嗎?請記住,ASP.net正在使用App_Data文件夾中的文件。 – Frank 2014-12-09 20:55:02