Compartir a través de


SqlMethodAttribute Clase

Definición

Indica el determinismo y las propiedades de acceso a datos de un método o una propiedad en un tipo definido por el usuario (UDT). Las propiedades en el atributo reflejan las características físicas que se utilizan al registrarse el tipo con SQL Server.

public ref class SqlMethodAttribute sealed : Microsoft::SqlServer::Server::SqlFunctionAttribute
[System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=false, Inherited=false)]
public sealed class SqlMethodAttribute : Microsoft.SqlServer.Server.SqlFunctionAttribute
[System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=false, Inherited=false)]
[System.Serializable]
public sealed class SqlMethodAttribute : Microsoft.SqlServer.Server.SqlFunctionAttribute
[<System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=false, Inherited=false)>]
type SqlMethodAttribute = class
    inherit SqlFunctionAttribute
[<System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=false, Inherited=false)>]
[<System.Serializable>]
type SqlMethodAttribute = class
    inherit SqlFunctionAttribute
Public NotInheritable Class SqlMethodAttribute
Inherits SqlFunctionAttribute
Herencia
SqlMethodAttribute
Atributos

Ejemplos

En el ejemplo siguiente se muestra un método UDT que se atribuye para indicar que el método no se invocará en instancias null del tipo , que el método no cambiará el estado del tipo y que no se llamará al método cuando null se proporcionen parámetros a la invocación del método.

using Microsoft.Data.SqlClient.Server;
using System.Data.SqlTypes;
using System.Text;

[Serializable]
[Microsoft.Data.SqlClient.Server.SqlUserDefinedType(Format.Native,
     IsByteOrdered = true,
     Name = "Point", ValidationMethodName = "ValidatePoint")]
public struct Point : INullable
{

    private bool is_Null;
    private Int32 _x;
    private Int32 _y;

    // Distance from Point to the specified x and y values method.
    [SqlMethod(OnNullCall = false, IsMutator = false, InvokeIfReceiverIsNull = false)]
    public Double DistanceFromXY(Int32 iX, Int32 iY)
    {
        return Math.Sqrt(Math.Pow(iX - _x, 2.0) + Math.Pow(iY - _y, 2.0));
    }

Comentarios

Para una propiedad , SqlMethodAttribute se debe usar en el establecedor o en el captador directamente.

SqlMethodAttribute hereda de , SqlFunctionAttributepor lo que SqlMethodAttribute hereda los FillRowMethodName campos y TableDefinition de SqlFunctionAttribute. Tenga en cuenta que no es posible escribir un método con valores de tabla, aunque los nombres de estos campos podrían sugerir que es posible.

Constructores

SqlMethodAttribute()

Atributo en un tipo definido por el usuario (UDT), que se utiliza para indicar el determinismo y las propiedades de acceso a datos de un método o una propiedad en un UDT.

Propiedades

DataAccess

Indica si la función implica acceso a los datos de usuario almacenados en la instancia local de SQL Server.

(Heredado de SqlFunctionAttribute)
FillRowMethodName

El nombre de un método de la misma clase que se usa para rellenar una fila de datos en la tabla devuelta por la función con valores de tabla.

(Heredado de SqlFunctionAttribute)
InvokeIfReceiverIsNull

Indica si SQL Server debe invocar el método en las instancias null.

IsDeterministic

Indica si la función definida por el usuario es determinista.

(Heredado de SqlFunctionAttribute)
IsMutator

Indica si un método en un tipo definido por el usuario (UDT) es un mutador.

IsPrecise

Indica si la función implica cálculos imprecisos, como operaciones de punto flotante.

(Heredado de SqlFunctionAttribute)
Name

Nombre con el que debe registrarse la función en SQL Server.

(Heredado de SqlFunctionAttribute)
OnNullCall

Indica si se llama al método en un tipo definido por el usuario (UDT) cuando se especifican los argumentos de entrada null en la invocación del método.

SystemDataAccess

Indica si la función requiere acceso a los datos almacenados en los catálogos del sistema o las tablas de sistema virtuales de SQL Server.

(Heredado de SqlFunctionAttribute)
TableDefinition

Cadena que representa la definición de tabla de los resultados si el método se utiliza como una función con valores de tabla (TVF).

(Heredado de SqlFunctionAttribute)

Se aplica a