2010-01-27 25 views
6

我最近開始使用NHibernate,並在整體上喜歡它很多。NHibernate和XML序列化與IList <T>

直到遇到需要序列化到XML和回來的問題。

我有一個有多對多關係的類,所以在父類中有一個IList來存放子對象列表。

Class parentClass{ 
    IList<childClass> childList; 

    string varA; 
    string varB; 
} 

我需要能夠序列化這對XML和背部,但顯然與IList阻止我這樣做,由於NHibernate的想要控制的具體實施的IList的,在這種情況下使用的袋子。

理想情況下,我希望避免使用單獨的DTO來替換列表,因爲我使用NHibernate的主要動機是能夠將它與POCO一起使用,而不必爲它製作令人討厭的框架。

我知道能夠使用ISerializable來控制序列化過程,但這又似乎否定了首先使用NHibernate來降低複雜性的要點。

此外,由於XML用於與第三方互操作,因此它需要保持「普通」。

解決此約束的最佳方法是什麼?

謝謝!

+0

重複:http://stackoverflow.com/questions/1958684/nhibernate-how-do-i-xmlserialize-an-isett – 2010-01-27 16:36:23

+0

認爲這不是一個新問題,但沒有找到很多具體到這種情況。看起來DTO是推薦的方式。煩人。 – RSlaughter 2010-01-27 17:19:42

+0

檢出AutoMapper,它使事情變得更容易。 – 2010-01-28 00:03:30

回答