IBinarySerialize.Write(BinaryWriter) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Преобразует пользовательский тип или пользовательскую агрегатную функцию в двоичный формат для возможности сохранения.
public:
void Write(System::IO::BinaryWriter ^ w);
public void Write (System.IO.BinaryWriter w);
abstract member Write : System.IO.BinaryWriter -> unit
Public Sub Write (w As BinaryWriter)
Параметры
Поток BinaryWriter, в который выполняется сериализация пользовательского типа или пользовательской агрегатной функции.
Примеры
В следующем примере показана Write реализация метода определяемого пользователем типа , который использует BinaryWriter для сериализации определяемого пользователем двоичного формата. Назначение заполнения символов NULL заключается в том, чтобы строковое значение полностью отделялось от двойного значения, чтобы один определяемый пользователем тип сравнивался с другим в коде Transact-SQL, строковые байты сравнивались со строковыми байтами, а двойные байты сравнивались с двойными байтами.
// The binary layout is as follows:
// Bytes 0 - 19: string text, padded to the right with null characters
// Bytes 20+: Double value
// using Microsoft.SqlServer.Server;
public void Write(System.IO.BinaryWriter w)
{
int maxStringSize = 20;
string stringValue = "The value of PI: ";
string paddedString;
double value = 3.14159;
// Pad the string from the right with null characters.
paddedString = stringValue.PadRight(maxStringSize, '\0');
// Write the string value one byte at a time.
for (int i = 0; i < paddedString.Length; i++)
{
w.Write(paddedString[i]);
}
// Write the double value.
w.Write(value);
}
Комментарии
Запись достаточной информации в двоичный поток, чтобы позволить Read методу воссоздать определяемый пользователем или определяемый пользователем агрегат.