我有一個常見的場景:SL應用程序和WCF服務作爲數據源。通過DTO更新實體
我使用DTO通過線路傳輸業務對象。我有一個問題 - 更新實體。在客戶端表單中,我有一個綁定的DTO,並將其發送給WCF。我想知道通過DTO數據更新實際數據庫實體的好方法。在WCF中,我使用NHibernate作爲DAL。我的解決方案是通過數據庫中的id獲取附加實體,並從DTO中複製所有屬性(使用嵌套對象)。
但我認爲它不靈活或不好。你能給我一個更好的方法嗎?
我有一個常見的場景:SL應用程序和WCF服務作爲數據源。通過DTO更新實體
我使用DTO通過線路傳輸業務對象。我有一個問題 - 更新實體。在客戶端表單中,我有一個綁定的DTO,並將其發送給WCF。我想知道通過DTO數據更新實際數據庫實體的好方法。在WCF中,我使用NHibernate作爲DAL。我的解決方案是通過數據庫中的id獲取附加實體,並從DTO中複製所有屬性(使用嵌套對象)。
但我認爲它不靈活或不好。你能給我一個更好的方法嗎?
像任何東西DTOs有優點&缺點,但是當你的DTOs與你的實體完全一樣時,它可能看起來像手動做屬性映射的負擔。
試試看AutoMapper這應該可以幫助你加速屬性映射。
謝謝。我使用AutoMapper將我的db對象映射到DTO。但我不知道我可以使用反之亦然變體,因爲我需要代理嵌套對象instaed int ID和其他...我的dtos是不一樣的實體 – 2010-06-22 06:00:16
您目前的方法聽起來對我來說是正確的。 – 2010-06-22 09:55:11