這真的很有必要,還是有任何框架爲我做這項工作? 謝謝ASP.NET - 我將對象傳輸到WCF時是否需要使用數據傳輸對象?
0
A
回答
0
需要考慮的事情是WCF數據服務,您可以通過網絡訪問您的實體。我不確定這是否符合您的要求或願望,但這是可能的。如果您使用Entity Framework 4(.NET 4),那麼通過WCF Data Services公開實體模型的一部分非常容易。
一些好處:
- 你的CRUD功能;
- 通過XML或JSON向客戶端公開的數據;
- 您可以將CRUD操作鎖定到實體級別(例如,將訂單展示爲完整的CRUD操作,但僅允許讀取和更新產品);
- 利用REST(例如HTTP動詞GET,PUT,POST,DELETE);
- 一致的OData數據格式(AtomPub);
- 使用querystring很容易查詢你的數據(不知道如果有人認爲這是一個專業或con!);
- 可能多了一些,我差點忘
一些負面:
- 您不必訪問完整的WS- *功能,因爲這是WCF休息;
- 在這一點上,安全性有點像你自己的 - 你可以在現有網站的安全模型(比如表單驗證)上捎帶,也可以從請求頭手動插入和讀取令牌。 (還有其他關於保護WCF數據服務的博客,所以我可能在這裏錯過了一些項目);
- 如果您不使用EF4,那麼公開您的實體以進行插入/更新/刪除工作會更多,因爲您必須實現IUpdateable接口。您還必須通過公開IQueryable方法來公開您的實體以供閱讀。
所以我不知道這是你在找什麼,但也許這是要考慮的事情。 MSDN上的文檔非常好,並且每個月似乎都會變得更好(4-5個月前它相當稀少!)。另外,也可以在線查看OData規格。
MSDN爲WCF數據服務 - http://msdn.microsoft.com/library/cc668792.aspx 的OData規範 - http://www.odata.org/ 博客由Pablo Cibaro,Pablo Castro和data services team(他們對認證/授權系列)。
我希望這有助於!
0
你不需要。您只需要使用服務已知的可序列化類型,但它不必是專門用於通信的DTO。 DTO的使用只是應用程序架構的問題。當應用程序的複雜性和暴露的邏輯上升時,您會發現DTO是有用的設計功能,但對於簡單的應用程序而言,它只是開銷。
相關問題
- 1. JAX-RS是否需要數據傳輸對象(DTO)?
- 2. Asp.net MVC中的數據傳輸對象
- 3. 傳輸LINQ數據對象
- 4. 如何有效地使用DTO對象(數據傳輸對象)?
- 5. 要傳輸文件的對象數組
- 6. WCF REST序列化之前的System.IO.Stream到數據傳輸對象?
- 7. 通過WCF客戶端將大型數據對象傳輸到WCF服務器
- 8. 將對象從java傳輸到C#
- 9. 傳輸對象默認值不傳輸
- 10. 數據傳輸對象(DTO)的要點是什麼?
- 11. C#MVC API數據傳輸對象
- 12. 數據傳輸對象應該多大?
- 13. 數據傳輸對象中的com.google.gwt.user.client.rpc.SerializationException
- 14. 如何寫數據傳輸對象?
- 15. 數據傳輸對象返回值
- 16. 使用WebRTC傳輸通用數據/對象點對點?
- 17. 數據傳輸對象與數值對象相同嗎?
- 18. 我需要通過查詢字符串傳輸javascript對象
- 19. Linq-to-SQL和WCF服務 - 數據傳輸對象
- 20. 價值對象vs數據傳輸對象
- 21. 數據傳輸對象,域對象和知識庫
- 22. 數據傳輸對象類可以包含其他對象嗎?
- 23. 傳遞對象參數WCF
- 24. 如何將配置數據傳輸到注入對象?
- 25. 傳輸Java對象,字節[]
- 26. 通過Pyro傳輸對象
- 27. 將IEnumerable <Object>傳遞給ViewModel - 對象是否需要ViewModel?
- 28. 數據傳輸對象的數據能否與UI需求相匹配
- 29. 實體框架使用傳輸對象通過WCF發送
- 30. 如何使用WCF C通過互聯網傳輸對象p2p#