SqlUserDefinedTypeAttribute.MaxByteSize Property


The maximum size of the instance, in bytes.

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

public int MaxByteSize { get; set; }

Property Value

Type: System.Int32

An Int32 value representing the maximum size of the instance.

You must specify the MaxByteSize property with the UserDefined serialization Format.

When connecting to SQL Server 2005 or earlier, MaxByteSize must be between 1 and 8000.

When connecting to SQL Server 2008 or later, set MaxByteSize between 1 and 8000, for a type whose instances are always 8,000 bytes or less. For types that can have instances larger than 8000, specify -1.

For a UDT with user-defined serialization specified, MaxByteSize refers to the total size of the UDT in its serialized form as defined by the user. Consider a UDT with a property of a string of 10 characters (Char). When the UDT is serialized using a BinaryWriter, the total size of the serialized string is 22 bytes: 2 bytes per Unicode UTF-16 character, multiplied by the maximum number of characters, plus 2 control bytes of overhead incurred from serializing a binary stream. So, when determining the value of MaxByteSize, the total size of the serialized UDT must be considered: the size of the data serialized in binary form plus the overhead incurred by serialization.

This property should not be used with Native serialization Format.

.NET Framework
Available since 2.0
Return to top