Microsoft.SqlServer.Server Namespace

The Microsoft.SqlServer.Server namespace contains classes, interfaces, and enumerations that are specific to the integration of the Microsoft .NET Framework common language runtime (CLR) into Microsoft SQL Server, and the SQL Server database engine process execution environment.

Using the attribute classes in the Microsoft.SqlServer.Server namespace, you can create stored procedures, triggers, user-defined types, user-defined functions (both scalar and table-valued), and user-defined aggregate functions in any supported .NET Framework language. You can also register them in SQL Server.

Query the SqlContext class to determine whether the currently executing code is running in the SQL Server database engine process. This also provides the caller's context when a user calls a managed stored procedure or function on the server, or when a user's action fires a managed code trigger.

The SqlContext class provides a SqlPipe object, through which results are returned to the client from a stored procedure, a SqlTriggerContext object, which provides information about the operation that caused a trigger to be fired, and a WindowsIdentity object, which can be used to determine the identity of the calling client when the client used integrated security for authentication.

For more information about SQL Server CLR integration and the APIs in the Microsoft.SqlServer.Server namespace, see SQL Server Books Online.

Used to mark a method definition of a user-defined aggregate as a function in SQL Server. The properties on the attribute reflect the physical characteristics used when the type is registered with SQL Server.

Indicates the determinism and data access properties of a method or property on a user-defined type (UDT). The properties on the attribute reflect the physical characteristics that are used when the type is registered with SQL Server.

Used to mark a method definition in an assembly as a stored procedure. The properties on the attribute reflect the physical characteristics used when the type is registered with SQL Server. This class cannot be inherited.

Used to mark a method definition in an assembly as a trigger in SQL Server. The properties on the attribute reflect the physical attributes used when the type is registered with SQL Server. This class cannot be inherited.

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.

Used to mark a type definition in an assembly as a user-defined type (UDT) in SQL Server. The properties on the attribute reflect the physical characteristics used when the type is registered with SQL Server. This class cannot be inherited.