我正在使用nHibernate。 我的課程是POCO,它與我的數據庫表格1:1映射。 我創建了一個IGenericDAO - > GenericDAO,它完成了我所有的基本CRUD。 (資料庫) 每個表都有一個DAO類,所以:對我的DAL層有什麼建議嗎?
公共類的UserDAO:GenericDAO
任何表的具體查詢將在tableDAO類去。
然後我有一個工廠,IDAOFactory。
public class NHibernateDAOFactory : IDAOFactory
{
public static UserDAO GetUserDAO()
{
return new UserDAO();
}
}
可能的改進:
IDAOFactory dbFactory = new NHibernateDAOFactory();
我在想創造的:
public class DAOFactoryFactory
{
public static IDAOFactory Load()
{
return new NHibernateDAOFactory();
}
}
這樣,我有一個單一的 1.只是讓我的web應用程序是不是有散落在需要交換數據庫層的情況下更改點。 (即在linq2sql和nhibernate之間切換,但不確定這在現實中是可能的)
任何關於如何改善這個問題的建議/指針,還是非常穩固?
爲什麼您認爲您可能需要更換ORM? – 2009-12-06 02:34:31