2010-02-19 21 views
1

我的意思是如果我通過http使用WCF,我會毫不猶豫。我應該通過WCF(namedPipes)使用DTO嗎?

我的ORM是LLBLGen Pro,它爲我提供了一些非常好的實體集合功能,如跟蹤更改等。如果我想去DTO路徑,我會失去這個功能。現在,在客戶端有一個Web應用程序,它不需要任何跟蹤更改funcionality,但也許有一天會有一個Silverlight應用程序在客戶端。

你們對此有何看法?

+0

爲什麼根據您使用的綁定您的決定會有所不同?如果它對於http有意義,那麼它對net.pipe有意義。 – 2010-02-19 14:09:21

+0

性能感是命名管道快得多,在客戶端將是肯定。基於.net的。 – user137348 2010-02-19 14:52:38

回答

3

即使您的傳輸綁定命名爲管道,WCF仍會序列化和反序列化消息。這意味着你的對象將被複製來回。

即使您共享客戶端和服務之間的類型(通常不推薦),您仍然會有副本來回傳送。實質上,即使沒有明確的DTO類型,您的對象仍將被視爲隱式DTO。

哦,它只會在它們已經是DataContracts或IXmlSerializable時才起作用。