Tôi đang sử dụng NHibernate và ninject trong ASP.Net MVC, using this page as a guide. Một điều tôi nghĩ là kỳ lạ là, trong mã này (nửa đường xuống trang)Tôi có thực sự thêm dòng này cho mỗi lớp trong mô hình của tôi bằng cách sử dụng ninject và NHibernate không?
public class RepositoryModule : NinjectModule
{
public override void Load()
{
const string connectionString = @"Server=localhost; Port=3306; Database=trucktracker; Uid=root; Pwd='your_own_password';";
NHibernateHelper helper = new NHibernateHelper(connectionString);
Bind<ISessionFactory>().ToConstant(helper.SessionFactory).InSingletonScope();
Bind<IUnitOfWork>().To<UnitOfWork>().InRequestScope();
Bind<ISession>().ToProvider(new SessionProvider()).InRequestScope();
Bind<IIntKeyedRepository<Truck>>().To<Repository<Truck>>().InRequestScope();
}
}
Tôi nghĩ đó là kỳ lạ mà bạn cần phải có dòng này mỗi mô hình:
Bind<IIntKeyedRepository<Truck>>().To<Repository<Truck>>().InRequestScope();
Nếu tôi có 100 bảng khác nhau (và do đó mô hình) tôi có thực sự cần phải thêm dòng này trong mỗi lớp mà tôi có? Có cách nào tốt hơn, nơi tôi chỉ có thể khai báo này một lần và sử dụng thừa kế để vượt qua trong Type trong bộ điều khiển của tôi?