Function 要素 (SSDL)

ストア スキーマ定義言語 (SSDL) の Function 要素は、基になるデータベースに存在するストアド プロシージャを指定します。

The Function element can have the following child elements (in the order listed):

ストレージ モデル内で指定されるストアド プロシージャは、アプリケーションの概念モデルにインポートできます。 詳細については、「How to: Import a Stored Procedure」を参照してください。 Function 要素を使用して、ストレージ モデルでカスタム関数を定義することもできます。 For more information see How to: Define Custom Functions in the Storage Model.

適用可能な属性

The following table describes the attributes that can be applied to the Function element.

Bb738614.note(ja-jp,VS.100).gif注 :
次の表に記載されていない属性は、store のエイリアスで修飾される場合があります。このエイリアスは、https://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator 名前空間のエイリアスです。このような属性は、モデルの更新時にモデルの更新ウィザードで使用されます。

属性名 必須 Value

Name

有効

ストアド プロシージャの名前。

ReturnType

いいえ

ストアド プロシージャの戻り値の型。

Aggregate

いいえ

ストアド プロシージャが集計値を返す場合は True、それ以外の場合はFalse

BuiltIn

いいえ

関数が組み込み1 関数の場合は True、それ以外の場合は False

StoreFunctionName

いいえ

ストアド プロシージャの名前。

NiladicFunction

いいえ

関数がニラディック2 関数の場合は True、それ以外の場合は False

IsComposable

いいえ

関数がコンポーザブル3 関数の場合は True、それ以外の場合は False

ParameterTypeSemantics

いいえ

関数オーバーロードの解決に使用される型のセマンティクスを定義する列挙。 列挙はプロバイダー マニフェストで関数定義によって定義されます。 既定値は AllowImplicitConversion です。

Schema

いいえ

ストアド プロシージャが定義されているスキーマの名前。

1 組み込み関数とは、データベースで定義されている関数です。 ストレージ モデルで定義されている関数については、「CommandText 要素 (SSDL)」を参照してください。

2 ニラディック関数とは、パラメーターを受け入れず、呼び出すときにかっこが不要な関数です。

3 1 つの関数の出力をもう 1 つの関数の入力にできる場合に、この 2 つの関数はコンポーザブルです。

Bb738614.note(ja-jp,VS.100).gif注 :
Function 要素には、任意の数の annotation 属性 (カスタム XML 属性) を適用できます。However, custom attributes may not belong to any XML namespace that is reserved for SSDL.カスタム属性の完全修飾名は一意である必要があります。

次の例で、UpdateOrderQuantity ストアド プロシージャに対応する Function 要素を示します。 このストアド プロシージャは 2 個のパラメーターを受け入れ、値を返しません。

<Function Name="UpdateOrderQuantity" 
          Aggregate="false" 
          BuiltIn="false" 
          NiladicFunction="false" 
          IsComposable="false" 
          ParameterTypeSemantics="AllowImplicitConversion" 
          Schema="dbo">
  <Parameter Name="orderId" Type="int" Mode="In" />
  <Parameter Name="newQuantity" Type="int" Mode="In" />
</Function>

参照

概念

エンティティ フレームワークの概要
SSDL 仕様
CommandText 要素 (SSDL)

その他のリソース

CSDL、SSDL、および MSL 仕様
ADO.NET Entity Data Model Tools