Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
IBinarySerialize Interface

IBinarySerialize Interface

Provides custom implementation for user-defined type (UDT) and user-defined aggregate serialization and deserialization.

Namespace:  Microsoft.SqlServer.Server
Assembly:  System.Data (in System.Data.dll)

public interface IBinarySerialize

The IBinarySerialize type exposes the following members.

Public methodReadGenerates a user-defined type (UDT) or user-defined aggregate from its binary form.
Public methodWriteConverts a user-defined type (UDT) or user-defined aggregate into its binary format so that it may be persisted.

User-defined types (UDTs) and user-defined aggregates are required to define a storage format, which can be either Format.Native or Format.UserDefined.

Format.Native allows SQL Server to handle serialization and deserialization automatically, but the format has restrictions on the kind of types it can handle. Format.UserDefined allows user-defined types and aggregates to handle their own serialization. User-defined types and aggregates must be marked with Format.UserDefined in the SqlUserDefinedType or SqlUserDefinedAggregate attribute, and must implement the IBinarySerialize interface.

Note that even with custom serialization, the total size of each instance must be under the maximum allowed limit, currently 8000 bytes.

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1
© 2015 Microsoft