2009-10-01 80 views
0

我使用了以下內容:是否可以使用自動映射和模式生成與Fluent NHibernate?

Fluently.Configure() 
     .Database(MsSqlConfiguration.MsSql2005.ConnectionString(connectionString)) 
     .Mappings(m => m.AutoMappings.Add(AutoMap.AssemblyOf<Incident>() 
     .Where(t => t.Namespace.StartsWith("EDA.DomainModel.POCO")))) 
     .ExposeConfiguration(BuildSchema) 
     .BuildSessionFactory(); 

它本質上是一個什麼樣的在功能NHibernate維基副本。但是,每當我跑這條線,就拋出了這個InnerException

"The type or method has 2 generic parameter(s), but 1 generic argument(s) were provided. A generic argument must be provided for each generic parameter." 

我真的不知道是什麼問題,所以我想,如果功能NHibernate能做到在第一與模式生成一起自動映射地點。我想要做的只是爲POCO創建一個持久層,而不必查看數據庫或者任何表格。

回答

0

是的,這是可能的。我使用automapping並執行導出架構。至於那個例外,我試圖映射IDictionary <,>。你用它嗎? Fluent NHibernate是否可以工作 - 即使您不嘗試導出模式?我會說這是你的映射問題,而不是模式導出。如果你有IDictionary,那麼它幾乎是肯定的。嘗試確定你的模式到平凡的課程,看看它是否有幫助;嘗試手動創建數據庫模式(對於普通類來說很簡單),然後檢查它是否工作。

+0

我刪除了字典,現在它說它無法找到我的枚舉映射。 Joy ... – 2009-10-02 01:09:57

+0

我明白了現在的問題,它無法處理枚舉的集合。 – 2009-10-02 03:43:22

+0

我應該能夠處理枚舉的集合,可能具有特殊的自定義用戶類型,請參閱http://stackoverflow.com/questions/439003/how-do-you-map-an-enum-as-an-int-例如,以流暢的nhibernate爲例。 – queen3 2009-10-02 07:17:52

相關問題