Элемент Parameter (CSDL)
Элемент Parameter в языке CSDL может быть дочерним по отношению к элементу FunctionImport или Function.
Приложение, использующее элемент FunctionImport
Элемент Parameter в качестве дочернего элемента для элемента FunctionImport используется для определения входных и выходных параметров функций импорта, объявленных в CSDL.
Элемент Parameter может иметь следующие дочерние элементы (в порядке перечисления).
Documentation (допустимое количество элементов — ноль или один)
Элементы Annotation (допустимое количество элементов — ноль или больше)
Применимые атрибуты
В следующей таблице описываются атрибуты, которые можно применить к элементу Parameter.
Имя атрибута | Необходимо | Значение |
---|---|---|
Name |
Да |
Имя параметра. |
Type |
Да |
Тип параметра. Значение должно иметь тип EDMSimpleType или сложный тип, описанный в пределах модели. Дополнительные сведения см. в разделе Типы концептуальной модели. |
Mode |
Нет |
In, Out или InOut в зависимости от того, является ли параметр входным, выходным или входным и выходным. |
MaxLength |
Нет |
Максимально допустимая длина параметра. |
Precision |
Нет |
Точность параметра. |
Scale |
Нет |
Масштаб параметра. |
Примечание |
---|
К элементу Parameter может быть применено любое количество атрибутов annotation (настраиваемых атрибутов XML).Однако настраиваемые атрибуты не могут принадлежать к любому пространству имен XML, зарезервированному для CSDL.Полные имена любых двух настраиваемых атрибутов не могут совпадать. |
Пример
В следующем примере рассматривается элемент FunctionImport с одним дочерним элементом Parameter. Функция принимает один входной параметр и возвращает коллекцию типов сущностей.
<FunctionImport Name="GetStudentGrades"
EntitySet="StudentGrade"
ReturnType="Collection(SchoolModel.StudentGrade)">
<Parameter Name="StudentID" Mode="In" Type="Int32" />
</FunctionImport>
Приложение, использующее элемент Function
Элемент Parameter в качестве дочернего элемента для элемента Function определяет параметры для функций, определяемых или объявляемых в концептуальной модели.
Элемент Parameter может иметь следующие дочерние элементы (в порядке перечисления).
Documentation (ноль или один элемент)
CollectionType (ноль или один элемент)
ReferenceType (ноль или один элемент)
RowType (ноль или один элемент)
Примечание |
---|
Элемент Property может иметь один и только один из следующих дочерних элементов: CollectionType, ReferenceType или RowType. |
- Элементы Annotation (допустимое количество элементов — ноль или больше)
Примечание |
---|
Элементы Annotation должны следовать после всех остальных дочерних элементов.Элементы annotation допускаются только в концептуальных моделях для приложений, которые предназначены для версии .NET Framework 4 или более поздней.Пространством имен XML для таких моделей является https://schemas.microsoft.com/ado/2008/09/edm. |
Применимые атрибуты
В следующей таблице описываются атрибуты, которые можно применить к элементу Parameter.
Имя атрибута | Необходимо | Значение |
---|---|---|
Name |
Да |
Имя параметра. |
Type |
Нет |
Тип параметра. Параметр может иметь любой из следующих типов (или быть коллекцией этих типов):
Дополнительные сведения об этих типах см. в разделе Типы концептуальной модели. |
Nullable |
Нет |
True (значение по умолчанию) или False, в зависимости от того, может ли свойство иметь значение null. |
DefaultValue |
Нет |
Значение свойства по умолчанию. |
MaxLength |
Нет |
Максимальная длина значения свойства. |
FixedLength |
Нет |
True или False, в зависимости от того, будет ли значение свойства храниться как строка постоянной длины. |
Precision |
Нет |
Точность значения свойства. |
Scale |
Нет |
Масштаб значения свойства. |
Unicode |
Нет |
True или False, в зависимости от того, будет ли значение свойства храниться как строка в Юникоде. |
Collation |
Нет |
Строка, указывающая последовательность сортировки, которая должна использоваться в источнике данных. |
Примечание |
---|
К элементу Parameter может быть применено любое количество атрибутов annotation (настраиваемых атрибутов XML).Однако настраиваемые атрибуты не могут принадлежать к любому пространству имен XML, зарезервированному для CSDL.Полные имена любых двух настраиваемых атрибутов не могут совпадать. |
Пример
В следующем примере показано, как элемент Function может использовать один дочерний элемент Parameter для определения параметра функции.
<Function Name="GetYearsEmployed" ReturnType="Edm.Int32">
<Parameter Name="Instructor" Type="SchoolModel.Person" />
<DefiningExpression>
Year(CurrentDateTime()) - Year(cast(Instructor.HireDate as DateTime))
</DefiningExpression>
</Function>
См. также
Основные понятия
Общие сведения о платформе Entity Framework
Спецификация языка CSDL
Элемент EntityContainer (язык CSDL)
Другие ресурсы
Спецификации языка CSDL, SSDL и MSL
ADO.NET Entity Data Model Tools
How to: Import a Stored Procedure
How to: Define Custom Functions in the Conceptual Model