Share via


SqlUserDefinedAggregateAttribute Třída

Definice

Určuje, že typ by měl být registrován jako uživatelem definovaná agregace. Vlastnosti atributu odrážejí fyzické atributy použité při registraci typu v SQL Server. Tuto třídu nelze dědit.

public ref class SqlUserDefinedAggregateAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Struct, AllowMultiple=false, Inherited=false)]
public sealed class SqlUserDefinedAggregateAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Struct, AllowMultiple=false, Inherited=false)>]
type SqlUserDefinedAggregateAttribute = class
    inherit Attribute
Public NotInheritable Class SqlUserDefinedAggregateAttribute
Inherits Attribute
Dědičnost
SqlUserDefinedAggregateAttribute
Atributy

Příklady

Následující příklad ukazuje SqlUserDefinedAggregateAttribute atribut pro uživatelem definovanou agregaci. Agregace používá vlastní serializaci, při serializaci má maximální velikost 8000 bajtů a je invariantní na hodnoty null, duplicity a pořadí.

using Microsoft.SqlServer.Server;
using System.IO;
using System.Data.Sql;
using System.Data.SqlTypes;
using System.Text;

[Serializable]
[Microsoft.SqlServer.Server.SqlUserDefinedAggregate(
   Microsoft.SqlServer.Server.Format.UserDefined,
   IsInvariantToNulls = true,
   IsInvariantToDuplicates = false,
   IsInvariantToOrder = false,
   MaxByteSize = 8000)
        ]
public class Concatenate : Microsoft.SqlServer.Server.IBinarySerialize
{

    public void Read(BinaryReader r)
    {

    }

    public void Write(BinaryWriter w)
    {

    }
}

Poznámky

SQL Server vytvoří uživatelem definovanou agregaci, která je vázána na definici třídy, která má SqlUserDefinedAggregateAttribute vlastní atribut. Každá agregace definovaná uživatelem musí být anotována tímto atributem.

Další informace o uživatelem definovaných agregacích a příkladech najdete v tématu "CLR User-Defined Aggregates" v SQL Server 2005 Books Online.

Konstruktory

SqlUserDefinedAggregateAttribute(Format)

Požadovaný atribut uživatelem definované agregace, který se používá k označení, že daný typ je uživatelem definovaná agregace, a formát úložiště uživatelem definované agregace.

Pole

MaxByteSizeValue

Maximální velikost v bajtech požadovaná k uložení stavu této agregační instance během výpočtu.

Vlastnosti

Format

Formát serializace jako Format.

IsInvariantToDuplicates

Určuje, zda je agregace invariantní na duplicity.

IsInvariantToNulls

Určuje, zda je agregace invariantní na hodnoty null.

IsInvariantToOrder

Určuje, zda je agregace v pořadí invariantní.

IsNullIfEmpty

Určuje, zda se agregace vrátí null , pokud nebyly nahromaděné žádné hodnoty.

MaxByteSize

Maximální velikost agregační instance (v bajtech).

Name

Název agregace.

Platí pro