Saya membuat proyek MVC3 baru, tekan F5, lihat halaman sampel.
Kemudian saya menggunakan NuGet untuk mendapatkan ekstensi Ninject.MVC . Saya memodifikasi global.asax saya sesuai dengan dokumentasi Ninject, Cara Mengatur Aplikasi MVC3 :
public class MvcApplication : NinjectHttpApplication
{
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new HandleErrorAttribute());
}
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index",
id = UrlParameter.Optional });
}
protected override IKernel CreateKernel()
{
var kernel = new StandardKernel();
kernel.Load(Assembly.GetExecutingAssembly());
return kernel;
}
protected override void OnApplicationStarted()
{
base.OnApplicationStarted();
AreaRegistration.RegisterAllAreas();
RegisterGlobalFilters(GlobalFilters.Filters);
RegisterRoutes(RouteTable.Routes);
}
}
Sekarang ketika saya menjalankan aplikasi, saya mendapatkan layar kuning kematian dengan pengecualian berikut:
InvalidOperationException - Urutan tidak berisi elemen.
di System.Linq.Enumerable.Single (...)
di Ninject.Web.Mvc.Bootstrapper.Initialize (...) baris 67.
Dan benar saja, baris 67 dari file itu memanggil .Single (), sehingga memunculkan pengecualian.
Apa yang saya lakukan salah?