2009-03-05 84 views
3

我想配置功能NHibernate和有此代碼功能NHibernate配置

Assembly mappingAssembly = Assembly.ReflectionOnlyLoadFrom("LibrarySample.Model.dll"); 
sessionFactory = Fluently.Configure() 
    .Database(MsSqlConfiguration.MsSql2005 
    .ConnectionString(c => c 
     .FromAppSetting("ConnectionString")) 
    .ShowSql()) 
    .Mappings(m => m 
    .FluentMappings.AddFromAssembly(mappingAssembly)) 
    .BuildSessionFactory(); 

當我跑我得到這個消息,雖然「FluentNHibernate.Cfg.FluentConfigurationException:創建一個會話使用了無效的或不完整的配置」。

如果我使用此代碼,但我不想直接從具有nHibernate會話管理器的核心程序集中引用模型程序集。

sessionFactory = Fluently.Configure() 
    .Database(MsSqlConfiguration.MsSql2005 
    .ConnectionString(c => c 
     .FromAppSetting("ConnectionString")) 
    .ShowSql()) 
    .Mappings(m => m 
    .FluentMappings.AddFromAssemblyOf<LibrarySample.Model.Book>()) 
    .BuildSessionFactory(); 

有人可以幫忙嗎?

回答

8

我解決了它。實體類中的其中一個屬性未標記爲虛擬。

+1

我有同樣的問題。謝謝! – IRegretable 2011-07-18 22:43:40