我有了我所有的NHibernate映射一個數據項目,我像庫:有沒有可能在我的服務項目中沒有NHibernate的參考?
public class Repository<T> : IRepository<T>
{
private readonly ISessionFactory _sessionFactory;
public Repository()
{
}
public Repository(ISessionFactory sessionFactory)
{
this._sessionFactory = sessionFactory;
}
}
我再有,從這個類派生像UserRepository等
public class UserRepository : Repository<IUser>, IUserRepository
{
}
我具體資料庫使用StructureMap來連接依賴關係。
在我的Services項目中,我不想引用任何與nhibernate相關的東西(如果可能的話),以使其與ORM無關。
問題是,我必須傳遞ISessionFactory在我的服務類中,這些存儲庫將使用正確的?
在我的web應用程序(MVC)中,我只想引用我的服務項目,而不是我的nhibernate Data項目。
該設置是否可行?