SqlMethodAttribute 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
UDT(사용자 정의 형식)에 대한 메서드나 속성의 명확성과 데이터 액세스 속성을 나타냅니다. 특성의 속성은 SQL Server에 형식을 등록할 때 사용되는 실제 특성을 반영합니다.
public ref class SqlMethodAttribute sealed : Microsoft::Data::SqlClient::Server::SqlFunctionAttribute
[System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=false, Inherited=false)]
[System.Serializable]
public sealed class SqlMethodAttribute : Microsoft.Data.SqlClient.Server.SqlFunctionAttribute
[System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=false, Inherited=false)]
public sealed class SqlMethodAttribute : Microsoft.Data.SqlClient.Server.SqlFunctionAttribute
[<System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=false, Inherited=false)>]
[<System.Serializable>]
type SqlMethodAttribute = class
inherit SqlFunctionAttribute
[<System.AttributeUsage(System.AttributeTargets.Method, AllowMultiple=false, Inherited=false)>]
type SqlMethodAttribute = class
inherit SqlFunctionAttribute
Public NotInheritable Class SqlMethodAttribute
Inherits SqlFunctionAttribute
- 상속
- 특성
예제
다음 예제에서는 메서드가 형식의 null 인스턴스에서 호출되지 않고, 메서드가 형식의 상태를 변경하지 않으며, 메서드 호출에 매개 변수가 제공될 때 null
메서드가 호출되지 않음을 나타내는 UDT 메서드를 보여 줍니다.
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));
}
설명
속성 SqlMethodAttribute 의 경우 setter 또는 getter에서 를 직접 사용해야 합니다.
SqlMethodAttribute는 에서 상속되므로 SqlMethodAttribute 에서 및 TableDefinition
필드를 SqlFunctionAttribute상속합니다FillRowMethodName
.SqlFunctionAttribute 테이블 반환 메서드를 작성할 수는 없지만 이러한 필드의 이름은 가능한 것으로 표시될 수 있습니다.
생성자
SqlMethodAttribute() |
UDT(사용자 정의 형식)의 특성으로, UDT에 대한 메서드나 속성의 명확성과 데이터 액세스 속성을 나타내는 데 사용됩니다. |
속성
DataAccess |
함수가 SQL Server의 로컬 인스턴스에 저장된 사용자 데이터에 대한 액세스를 수행하는지 여부를 나타냅니다. (다음에서 상속됨 SqlFunctionAttribute) |
FillRowMethodName |
테이블 반환 함수에 의해 반환된 테이블의 데이터 행을 채우는 데 사용되는 동일한 클래스의 메서드 이름입니다. (다음에서 상속됨 SqlFunctionAttribute) |
InvokeIfReceiverIsNull |
SQL Server가 null 인스턴스에서 이 메서드를 호출해야 하는지 여부를 나타냅니다. |
IsDeterministic |
사용자 정의 함수가 명확한지 여부를 나타냅니다. (다음에서 상속됨 SqlFunctionAttribute) |
IsMutator |
UDT(사용자 정의 형식)에 대한 메서드가 변경자(mutator)인지 여부를 나타냅니다. |
IsPrecise |
함수가 부동 소수점 연산과 같은 부정확한 계산을 수행하는지 여부를 나타냅니다. (다음에서 상속됨 SqlFunctionAttribute) |
Name |
SQL Server에 함수를 등록해야 할 때 사용되는 이름입니다. (다음에서 상속됨 SqlFunctionAttribute) |
OnNullCall |
메서드 호출에 |
SystemDataAccess |
함수가 SQL Server의 시스템 카탈로그나 가상 시스템 테이블에 저장된 데이터에 액세스해야 하는지 여부를 나타냅니다. (다음에서 상속됨 SqlFunctionAttribute) |
TableDefinition |
메서드가 TVF(테이블 반환 함수)로 사용되는 경우 결과의 테이블 정의를 나타내는 문자열입니다. (다음에서 상속됨 SqlFunctionAttribute) |