Поделиться через


Элемент Function (язык SSDL)

Элемент Function на языке SSDL указывает хранимую процедуру, существующую в основной базе данных.

Элемент Function может иметь следующие дочерние элементы (в порядке перечисления).

Хранимая процедура, указанная в модели хранения, может быть импортирована в концептуальную модель приложения. Дополнительные сведения см. в разделе How to: Import a Stored Procedure. Элемент Function можно также использовать для определения пользовательских функций в модели хранения. Дополнительные сведения см. в разделе How to: Define Custom Functions in the Storage Model.

Применимые атрибуты

В следующей таблице описываются атрибуты, которые можно применить к элементу Function.

Bb738614.note(ru-ru,VS.100).gifПримечание
Некоторые атрибуты (не указанные здесь) могут сопровождаться именем store, которое служит псевдонимом для пространства имен https://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator.Эти атрибуты используются мастером обновления модели в ходе обновления модели.

Имя атрибута Необходимо Значение

Name

Да

Имя хранимой процедуры.

ReturnType

Нет

Возвращаемый тип хранимой процедуры.

Aggregate

Нет

Значение True, если хранимая процедура возвращает статистическое значение; в противном случае — False.

BuiltIn

Нет

Значение True, если функция встроена в функцию 1; в противном случае — False.

StoreFunctionName

Нет

Имя хранимой процедуры.

NiladicFunction

Нет

Значение True, если функция является функцией без параметров 2; в противном случае — False.

IsComposable

Нет

Значение True, если функция допускает композицию функции 3; в противном случае — False.

ParameterTypeSemantics

Нет

Перечисление, определяющее семантику типа, которая используется для разрешения перегрузок функций. Перечисление определено в манифесте поставщика для определения функции. Значение по умолчанию: AllowImplicitConversion.

Schema

Нет

Имя схемы, в которой определена хранимая процедура.

1 Встроенная функция — это функция, определенная в базе данных. Сведения о функциях, определенных в модели хранения, см. в разделе Элемент CommandText (язык SSDL)).

2 Функция без параметров — это функция, не принимающая параметров и не требующая фигурных скобок «{}» при вызове.

3 Две функции допускают композицию, если выходные данные одной из них могут использоваться в качестве входных данных другой функции.

Bb738614.note(ru-ru,VS.100).gifПримечание
К элементу Function может быть применено любое количество атрибутов annotation (настраиваемых атрибутов XML).Однако настраиваемые атрибуты не могут принадлежать к любому пространству имен XML, зарезервированному для SSDL.Полные имена любых двух настраиваемых атрибутов не могут совпадать.

Пример

Следующий пример показывает элемент Function, соответствующий хранимой процедуре UpdateOrderQuantity. Хранимая процедура принимает два параметра и не возвращает значение.

<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>

См. также

Основные понятия

Общие сведения о платформе Entity Framework
Спецификация языка SSDL
Элемент CommandText (язык SSDL)

Другие ресурсы

Спецификации языка CSDL, SSDL и MSL
ADO.NET Entity Data Model Tools