Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

SqlMethodAttribute Class

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.

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

[SerializableAttribute] 
[AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple=false, Inherited=false)] 
public sealed class SqlMethodAttribute : SqlFunctionAttribute
/** @attribute SerializableAttribute() */ 
/** @attribute AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple=false, Inherited=false) */ 
public final class SqlMethodAttribute extends SqlFunctionAttribute
SerializableAttribute 
AttributeUsageAttribute(AttributeTargets.Method, AllowMultiple=false, Inherited=false) 
public final class SqlMethodAttribute extends SqlFunctionAttribute
Not applicable.

For a property, the SqlMethodAttribute should be used on the setter or the getter directly.

Inherits from a SqlFunctionAttribute.

The following example shows a UDT method that is attributed to indicate that the method will not be invoked on null instances of the type, that the method will not change the state of the type, and that the method will not be called when a null reference (Nothing in Visual Basic) parameters are supplied to the method invocation.

// 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));
}

System.Object
   System.Attribute
     Microsoft.SqlServer.Server.SqlFunctionAttribute
      Microsoft.SqlServer.Server.SqlMethodAttribute

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

Windows 98, Windows Server 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

Show:
© 2014 Microsoft