2017-05-06 80 views
0

在阿德里安大廳的書中,有一個用子對象提取對象的示例。 在這種情況下,它看起來是這樣的:在NoSql中存儲擴展實體

​​

正如你可以看到,有一個客戶爲複雜的數據和多個設備。

在客戶端,我們可以在nosql離線存儲中存儲像這樣的複雜數據嗎?

回答

1

在客戶端,我們可以像這樣複雜的數據存儲在NoSQL的脫機存儲?

根據您的描述,我已經從adrian hall的書中檢查了The Domain Manager。另外,我已經測試了類似的代碼,並按如下複雜的數據可以存儲在SQLite的脫機存儲:

enter image description here

對於離線同步,推動地方工作表到遠程的時候,關係CustomerEquipments需要由服務器端被忽略如下:

// For incoming requests, ignore the relationships 
cfg.CreateMap<JobDTO, Job>()            
    .ForMember(job => job.Customer, map => map.Ignore()) 
    .ForMember(job => job.Equipments, map => map.Ignore()); 

至於Existing Table Relationships with the MappedEntityDomainManager國同步作業表:

客戶和設備數據都作爲一個記錄下來。這具有確保客戶和設備數據爲只讀的副作用。您可以只更新作業表中的信息。

而且,阿德里安·霍爾提到,他更喜歡單獨處理表格和手動移動客戶端上的操作關係管理。這會在移動客戶端上產生更多的代碼,但通過避免大多數關係的複雜性,使服務器變得更簡單。