BodyWriter.CreateBufferedCopy(Int32) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Tworzy buforowaną kopię treści.
public:
System::ServiceModel::Channels::BodyWriter ^ CreateBufferedCopy(int maxBufferSize);
public System.ServiceModel.Channels.BodyWriter CreateBufferedCopy (int maxBufferSize);
member this.CreateBufferedCopy : int -> System.ServiceModel.Channels.BodyWriter
Public Function CreateBufferedCopy (maxBufferSize As Integer) As BodyWriter
Parametry
- maxBufferSize
- Int32
Maksymalny rozmiar buforu dla treści.
Zwraca
Obiekt BodyWriter zawierający kopię tego obiektu.
Wyjątki
Wartość maxBufferSize
jest mniejsza niż zero.
Treść została już napisana i nie można jej zapisać ponownie lub składnik zapisywania treści nie jest buforowany.
Przykłady
Poniższy przykład pokazuje, jak utworzyć buforowaną kopię istniejącego BodyWriter wystąpienia.
string[] strings = { "Hello", "world" };
MyBodyWriter bodyWriter = new MyBodyWriter(strings);
StringBuilder strBuilder = new StringBuilder(10);
XmlWriter writer = XmlWriter.Create(strBuilder);
XmlDictionaryWriter dictionaryWriter = XmlDictionaryWriter.CreateDictionaryWriter(writer);
bodyWriter.WriteBodyContents(dictionaryWriter);
dictionaryWriter.Flush();
MyBodyWriter bufferedBodyWriter = (MyBodyWriter) bodyWriter.CreateBufferedCopy(1024);
Dim strings() As String = {"Hello", "world"}
Dim bodyWriter As New MyBodyWriter(strings)
Dim strBuilder As New StringBuilder(10)
Dim writer As XmlWriter = XmlWriter.Create(strBuilder)
Dim dictionaryWriter As XmlDictionaryWriter = XmlDictionaryWriter.CreateDictionaryWriter(writer)
bodyWriter.WriteBodyContents(dictionaryWriter)
dictionaryWriter.Flush()
Dim bufferedBodyWriter As MyBodyWriter = CType(bodyWriter.CreateBufferedCopy(1024), MyBodyWriter)
Uwagi
Jeśli IsBuffered obiekt jest true
wtedy BodyWriter zwracany. Jeśli IsBuffered wartość jest false
to zwracana jest zawartość BodyWriter elementu do maxBufferSize
. Wywołuje to również OnCreateBufferedCopy(Int32) jako punkt rozszerzalności.