2011-09-17 34 views
0

這是使用RavenDB開始一個個人項目。 我一直在使用一個mxing程序多年,其跟蹤數據存儲在XML文件中。結構如下:RavenDB:幫助建築我的項目

<Song attribute="" attribute=""> 
    <node1 attribute="" /> 
    <node2 attribute="" attribute="" /> 
    <node3 attribute="" attribute="" attribute="" /> 
    <node4 attribute="" attribute="" /> 
    <node5 attribute="" /> 
</Song> 
<Song attribute="" attribute=""> 
    <node1 attribute="" /> 
    <node2 attribute="" /> 
    <node3 attribute="" /> 
    <node4 attribute="" attribute="" /> 
</Song> 

我想操縱數據(CRUD和其他niceties)。獲得樂趣後,我想將所有內容保存到ravenDB中,然後保存到一個新的xml文件中。由於數據是xml節點,我認爲最好將所有節點及其內容導入到RavenDB中。 使設計從架構脫鉤,我打算做至少2 POCO:

DAL:SongRecord POCO,其性質是那些來自一個典型的節點 BL:Song POCO更商業化

我應該怎麼做? JSON.NET提供了序列化/反序列化XML到JSON,反之亦然。一旦XML被序列化成json,我可以將它存儲到RavenDB中。 我的BL與查詢RavenDB的DAL進行通信。

一段時間,我想堅持一切到數據庫,然後導出一切都變成新的XML文件,其模式之後就是我上面mentionned。

您對此有何看法?有什麼不對?什麼是最好的呢?請記住,這是一個學習RavenDB的寵物項目。

+0

爲什麼XML和JSON之間的轉換?性能?我沒有使用烏鴉..它不能存儲XML?如果可以的話,你可以將xml保存在你想要輸出的格式中。然後保存將變得輕而易舉。我的建築看起來不錯。玩得開心:) – iDevForFun

回答

0

不RavenDB處理序列來回JSON?您應該必須處理的是讓您的POCO來回混音程序的XML格式。在其他地方,讓他們成爲POCO。

+0

我不明白。假設RavenDB來回序列化爲JSON。數據被保存到數據庫中。比方說,價值觀不適合有效查詢。例如。日期以自定義的方式持續存在(0230061025等於2002年6月30日上午10:25)。我應該將數據提取到POCO記錄(SongRecord)中以緩解查詢(針對日期時間對象?)。謝謝你的幫助。 – roland

+1

RavenDB將爲你處理所有的查詢細節,你不應該擔心 –