1
我有一個MessageInspector,記錄通過的消息?爲什麼只能閱讀一條消息並且必須創建副本?我已經看到了MSDN的文檔,我需要創建一個緩衝副本,但我不知道爲什麼它以這種方式實現?有人可以向我解釋嗎?說明使用WCF讀取消息對象一次?
private static void SendRequest(string request)
{
var req = (HttpWebRequest) WebRequest.Create("http://urltoservice.svc/MethodToCall");
req.ContentType = "text/xml";
req.Method = "POST";
using (var stm = req.GetRequestStream())
{
using (var stmw = new StreamWriter(stm))
{
stmw.Write(request);
}
}
byte[] myData;
using (var webResponse = req.GetResponse())
{
var responseStream = webResponse.GetResponseStream();
myData = ReadFully(responseStream);
}
// Do whatever you need with the response
string responseString = Encoding.ASCII.GetString(myData);
}
如果我沒有訪問服務器的部分或更改使用消息的緩衝副本MessageInspector的能力,我可以修改上述消息作出流的副本?如果是這樣,我該怎麼做呢?
請參閱[數據傳輸體系結構概述](http://msdn.microsoft.com/zh- cn/library/aaa347789.aspx)消息正文只能被檢索一次。這使得可以使用只向前流*。所以這使我相信這是一個性能優化措施,最重要的是,導致這個架構決定 –
這是高級開發人員的文章所述。但我很欣賞它。我不知道什麼是僅前向流? – Xaisoft
誰低估?你能解釋爲什麼嗎? – Xaisoft