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


Элемент FunctionImportMapping (язык MSL)

Элемент FunctionImportMapping в языке MSL задает сопоставление между импортом функции в концептуальной модели и хранимой процедурой или функцией в основной базе данных. Импорт функций должен быть объявлен в концептуальной модели, а хранимые процедуры должны быть объявлены в модели хранения. Дополнительные сведения см. в разделах Элемент FunctionImport (язык CSDL) и Элемент Function (язык SSDL).

Cc716759.note(ru-ru,VS.100).gifПримечание
По умолчанию импорт функции возвращает тип сущности концептуальной модели или сложный тип. В этом случае имена столбцов, которые вернула основная хранимая процедура, должны точно соответствовать именам свойств в типе концептуальной модели.Если имена столбцов не соответствуют в точности именам свойств, то сопоставление должно быть определено в элементе ResultMapping.

Элемент FunctionImportMapping может иметь следующие дочерние элементы.

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

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

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

FunctionImportName

Да

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

FunctionName

Да

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

Пример

Следующий пример основан на модели School. Рассмотрим следующую функцию в модели хранения:

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

Также рассмотрим данный импорт функции в концептуальной модели:

<FunctionImport Name="GetStudentGrades" EntitySet="StudentGrades" 
                ReturnType="Collection(SchoolModel.StudentGrade)">
  <Parameter Name="StudentID" Mode="In" Type="Int32" />
</FunctionImport>

В следующем примере показан элемент FunctionImportMapping, используемый для сопоставления функции и импорта функции друг другу:

<FunctionImportMapping FunctionImportName="GetStudentGrades"
                       FunctionName="SchoolModel.Store.GetStudentGrades" />

См. также

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

Спецификации языка CSDL, SSDL и MSL
Моделирование и сопоставление (платформа Entity Framework)
How to: Import a Stored Procedure