SqlMethodAttribute Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Indique le déterminisme et les propriétés d'accès aux données d'une méthode ou propriété d'un type défini par l'utilisateur. Les propriétés de l'attribut reflètent les caractéristiques physiques utilisées lorsque le type est enregistré avec 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
- Héritage
- Attributs
Exemples
L’exemple suivant montre une méthode UDT qui est attribuée pour indiquer que la méthode ne sera pas appelée sur les instances null du type, que la méthode ne changera pas l’état du type et que la méthode ne sera pas appelée lorsque null
des paramètres sont fournis à l’appel de méthode.
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));
}
Remarques
Pour une propriété, le SqlMethodAttribute doit être utilisé directement sur le setter ou le getter.
SqlMethodAttribute hérite d’un SqlFunctionAttribute, SqlMethodAttribute donc hérite des FillRowMethodName
champs et TableDefinition
de SqlFunctionAttribute. Notez qu’il n’est pas possible d’écrire une méthode table, bien que les noms de ces champs puissent suggérer que c’est possible.
Constructeurs
SqlMethodAttribute() |
Attribut d'un type défini par l'utilisateur permettant d'indiquer le déterminisme et les propriétés d'accès aux données d'une méthode ou d'une propriété sur un type défini par l'utilisateur. |
Propriétés
DataAccess |
Indique si la fonction implique l'accès aux données utilisateur stockées dans l'instance locale de SQL Server. (Hérité de SqlFunctionAttribute) |
FillRowMethodName |
Nom d’une méthode dans la même classe que celle qui est utilisée pour remplir une ligne de données dans la table retournée par la fonction table. (Hérité de SqlFunctionAttribute) |
InvokeIfReceiverIsNull |
Indique si SQL Server doit appeler la méthode sur les instances null. |
IsDeterministic |
Indique si la fonction définie par l'utilisateur est déterministe. (Hérité de SqlFunctionAttribute) |
IsMutator |
Indique si une méthode d'un type défini par l'utilisateur est un mutateur. |
IsPrecise |
Indique si la fonction implique des calculs imprécis, tels que des opérations à virgule flottante. (Hérité de SqlFunctionAttribute) |
Name |
Nom sous lequel la fonction doit être enregistrée dans SQL Server. (Hérité de SqlFunctionAttribute) |
OnNullCall |
Indique si la méthode sur un type défini par l’utilisateur (UDT) est appelée quand des arguments d’entrée |
SystemDataAccess |
Indique si la fonction requiert l'accès aux données stockées dans les catalogues système ou les tables système virtuelles de SQL Server. (Hérité de SqlFunctionAttribute) |
TableDefinition |
Chaîne qui représente la définition de table des résultats, si la méthode est utilisée comme une fonction table. (Hérité de SqlFunctionAttribute) |