2013-05-17 30 views
0

我有一個接受圖像作爲輸入(如System.Drawing.Bitmap)的WCF服務。它在同一臺計算機上執行,並且正在使用NetNamedPipeBinding。目前服務接口是這樣定義的:使用NetNamedPipeBinding時,將Systrem.Drawing.Bitmap轉換爲字節是否更好?

[ServiceContract] 
public interface IMyService 
{ 
    [OperationContract] 
    string DoWork(Bitmap image); 
} 

它工作得很好。但我不確定Bitmap是如何序列化的,我不知道在性能方面是否更好,只是獲取圖像字節併發送它們而不是依賴.net序列化。

回答

2

由於Bitmap可串行化,DataContractSerializer支持它序列化。 請參閱「Types Supported by the Data Contract Serializer」。

+0

是的,我的服務正在運行。如果它不被'DataContractSerializer'支持,那就不會。所以你的回答不是很有幫助。問題是隻發送字節是否會更好。這是在問題描述中,而不是在標題中。我剛剛編輯了標題。 – ceco

+0

「是否會更好地發送字節」 - 那麼,從您的角度來看,什麼是序列化? :) – Dennis

+0

我的意思是手動做到這一點。例如。這樣'DataContractSerializer'不必使用Reflection來檢查類是否受支持。這將加快速度。 – ceco