MessageBuffer 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
表示儲存整個訊息以供未來取用的記憶體緩衝區。
public ref class MessageBuffer abstract : IDisposable
public ref class MessageBuffer abstract : IDisposable, System::Xml::XPath::IXPathNavigable
public abstract class MessageBuffer : IDisposable
public abstract class MessageBuffer : IDisposable, System.Xml.XPath.IXPathNavigable
type MessageBuffer = class
interface IDisposable
type MessageBuffer = class
interface IXPathNavigable
interface IDisposable
Public MustInherit Class MessageBuffer
Implements IDisposable
Public MustInherit Class MessageBuffer
Implements IDisposable, IXPathNavigable
- 繼承
-
MessageBuffer
- 實作
備註
Message 執行個體的本文只能取用或寫入一次。 如果希望取用 Message 執行個體超過一次,您應該使用 MessageBuffer 類別,將整個 Message 執行個體完全儲存到記憶體中。
呼叫 MessageBuffer 執行個體的 CreateBufferedCopy,即可建構 Message 執行個體。 然後,系統會建立並傳回新的 MessageBuffer,它會取得 Message 的擁有權,並且將整個內容讀取至記憶體中。
為了從 Message 擷取 MessageBuffer 的複本,您必須呼叫 CreateMessage 的 MessageBuffer 方法。 這個方法會傳回所提供之原始 Message 執行個體的相同複本。
您可以將 BufferSize 設定為所需的位元組數目上限,藉此控制緩衝區的大小上限。 這個數目未必涵蓋與建置緩衝區或附加至訊息之屬性有關的任何暫時性配置,
使用完畢後,您都要呼叫 MessageBuffer 以關閉 Close 執行個體。 這樣可能會更快地釋放系統資源。
給衍生自此類別之 Managed C++ 使用者的特別說明:
請將您的清除程式碼置於 (On)(Begin)Close (and/or OnAbort),而不是解構函式。
避免使用解構函式:它們會導致編譯器自動產生 IDisposable
避免使用非參考成員:它們會導致編譯器自動產生 IDisposable
避免使用完成項;但是假如您加入一個完成項,就應該抑制建置警告並呼叫來自 (On)(Begin)Close (and/or OnAbort) 的 SuppressFinalize(Object) 和完成項,以模擬原本可能自動產生的 IDisposable 行為。
建構函式
MessageBuffer() |
初始化 MessageBuffer 類別的新執行個體。 |
屬性
BufferSize |
取得這個 MessageBuffer 取用的大約位元組數目。 |
MessageContentType |
取得這個緩衝區中儲存的訊息內容型別。 |
方法
Close() |
使用緩衝區完畢。 |
CreateMessage() |
傳回原始訊息的複本。 |
CreateNavigator() |
建立新的 XPathNavigator 物件,以便巡覽這個物件。 這個方法無法被繼承。 |
CreateNavigator(Int32) |
建立新的 XPathNavigator 物件,以便使用位於指定節點的導覽來巡覽這個物件。 |
CreateNavigator(Int32, XmlSpace) |
建立新的 XPathNavigator 物件,以便使用位於指定節點之導覽與 |
CreateNavigator(XmlSpace) |
建立新的 XPathNavigator 物件,以便使用指定的 |
Equals(Object) |
判斷指定的物件是否等於目前的物件。 (繼承來源 Object) |
GetHashCode() |
做為預設雜湊函式。 (繼承來源 Object) |
GetType() |
取得目前執行個體的 Type。 (繼承來源 Object) |
MemberwiseClone() |
建立目前 Object 的淺層複製。 (繼承來源 Object) |
ToString() |
傳回代表目前物件的字串。 (繼承來源 Object) |
WriteMessage(Stream) |
將這個緩衝區的整個內容寫入指定的 IO 資料流。 |
明確介面實作
IDisposable.Dispose() |
釋放 MessageBuffer 所使用的 Unmanaged 資源,並選擇性地釋放 Managed 資源。 這個方法無法被繼承。 |