SqlUserDefinedAggregateAttribute Class

 

Indicates that the type should be registered as a user-defined aggregate. The properties on the attribute reflect the physical attributes used when the type is registered with SQL Server. This class cannot be inherited.

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

System.Object
  System.Attribute
    Microsoft.SqlServer.Server.SqlUserDefinedAggregateAttribute

<AttributeUsageAttribute(AttributeTargets.Class Or AttributeTargets.Struct,
	AllowMultiple := False, Inherited := False)>
Public NotInheritable Class SqlUserDefinedAggregateAttribute
	Inherits Attribute

NameDescription
System_CAPS_pubmethodSqlUserDefinedAggregateAttribute(Format)

A required attribute on a user-defined aggregate, used to indicate that the given type is a user-defined aggregate and the storage format of the user-defined aggregate.

NameDescription
System_CAPS_pubpropertyFormat

The serialization format as a Format.

System_CAPS_pubpropertyIsInvariantToDuplicates

Indicates whether the aggregate is invariant to duplicates.

System_CAPS_pubpropertyIsInvariantToNulls

Indicates whether the aggregate is invariant to nulls.

System_CAPS_pubpropertyIsInvariantToOrder

Indicates whether the aggregate is invariant to order.

System_CAPS_pubpropertyIsNullIfEmpty

Indicates whether the aggregate returns null if no values have been accumulated.

System_CAPS_pubpropertyMaxByteSize

The maximum size, in bytes, of the aggregate instance.

System_CAPS_pubpropertyName

The name of the aggregate.

System_CAPS_pubpropertyTypeId

When implemented in a derived class, gets a unique identifier for this Attribute.(Inherited from Attribute.)

NameDescription
System_CAPS_pubmethodEquals(Object)

This API supports the product infrastructure and is not intended to be used directly from your code. Returns a value that indicates whether this instance is equal to a specified object.(Inherited from Attribute.)

System_CAPS_pubmethodGetHashCode()

Returns the hash code for this instance.(Inherited from Attribute.)

System_CAPS_pubmethodGetType()

Gets the Type of the current instance.(Inherited from Object.)

System_CAPS_pubmethodIsDefaultAttribute()

When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.(Inherited from Attribute.)

System_CAPS_pubmethodMatch(Object)

When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.(Inherited from Attribute.)

System_CAPS_pubmethodToString()

Returns a string that represents the current object.(Inherited from Object.)

NameDescription
System_CAPS_pubfieldSystem_CAPS_staticMaxByteSizeValue

The maximum size, in bytes, required to store the state of this aggregate instance during computation.

NameDescription
System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Maps a set of names to a corresponding set of dispatch identifiers.(Inherited from Attribute.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Retrieves the type information for an object, which can be used to get the type information for an interface.(Inherited from Attribute.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.GetTypeInfoCount(UInt32)

Retrieves the number of type information interfaces that an object provides (either 0 or 1).(Inherited from Attribute.)

System_CAPS_pubinterfaceSystem_CAPS_privmethod_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Provides access to properties and methods exposed by an object.(Inherited from Attribute.)

SQL Server creates a user-defined aggregate that is bound to the class definition that has the SqlUserDefinedAggregateAttribute custom attribute. Every user-defined aggregate must be annotated with this attribute.

See "CLR User-Defined Aggregates" in SQL Server 2005 Books Online for more information on user-defined aggregates and examples.

The following example shows the SqlUserDefinedAggregateAttribute attribute for a user-defined aggregate. The aggregate uses custom serialization, has a maximum size of 8000 bytes when serialized, and is invariant to nulls, duplicates, and order.

Imports System
Imports System.Data
Imports System.IO
Imports Microsoft.SqlServer.Server

<Serializable(), SqlUserDefinedAggregate(Microsoft.SqlServer.Server.Format.UserDefined, _ 
                                         IsInvariantToNulls:=True, _ 
                                         IsInvariantToDuplicates:=False, _
                                         IsInvariantToOrder:=False, _
                                         MaxByteSize:=8000)> _
Public Class Concatenate
    Implements Microsoft.SqlServer.Server.IBinarySerialize

.NET Framework
Available since 2.0

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top
Show: