共用方式為


Parameter 項目 (CSDL)

概念結構定義語言 (CSDL) 中的 Parameter 項目可以是 FunctionImport 項目Function 項目的子項目。

FunctionImport 項目的應用

Parameter 項目 (作為 FunctionImport 項目的子項目) 可以用來定義函式匯入的輸入和輸出參數,該函式匯入於 CSDL 中宣告。

Parameter 項目可以擁有下列子項目 (依列出的順序):

適用屬性

以下資料表描述的屬性可套用至 Parameter 項目。

屬性名稱 必要

Name

參數名稱。

Type

參數型別。 值必須是 EDMSimpleType 或是模型範圍內的複雜型別。 如需詳細資訊,請參閱概念模型型別

Mode

InOutInOut,需根據參數是否為輸入、輸出或輸入/輸出參數而定。

MaxLength

可允許的最大參數長度。

Precision

參數的精確度。

Scale

參數的小數位數。

Ee473431.note(zh-tw,VS.100).gif注意:
任何數量的附註屬性 (自訂 XML 屬性) 都可以套用至 Parameter 項目。不過,自訂屬性不可屬於任何 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 項目可以擁有下列子項目 (依列出的順序):

Ee473431.note(zh-tw,VS.100).gif注意:
只有 CollectionTypeReferenceTypeRowType 其中一個項目可以是 Property 項目的子項目。

Ee473431.note(zh-tw,VS.100).gif注意:
Annotation 項目必須出現在所有其他子項目之後。Annotation 項目僅能用於應用程式的概念模型,該應用程式的目標必須是 .NET Framework 4 版或以後版本。這類模型的 XML 命名空間是 https://schemas.microsoft.com/ado/2008/09/edm。

適用屬性

以下資料表描述的屬性可套用至 Parameter 項目。

屬性名稱 必要

Name

參數名稱。

Type

參數型別。 參數可以是下列任何一種型別 (或這些型別的集合):

  • EdmSimpleType

  • 實體類型

  • 複雜型別

  • 資料列型別

  • 參考型別

如需這些類型的詳細資訊,請參閱概念模型型別

Nullable

True (預設值) 或 False 是根據屬性是否可以有 null 值而定。

DefaultValue

屬性的預設值。

MaxLength

屬性值的最大長度。

FixedLength

TrueFalse 是根據屬性值是否可以儲存為固定長度的字串而定。

Precision

屬性值的準確度。

Scale

屬性值的小數點位數。

Unicode

TrueFalse 是根據屬性值是否可以儲存為 Unicode 字串而定。

Collation

指定資料來源中使用之定序順序的字串。

Ee473431.note(zh-tw,VS.100).gif注意:
任何數量的附註屬性 (自訂 XML 屬性) 都可以套用至 Parameter 項目。不過,自訂屬性不可屬於任何 XML 命名空間,這是保留供 CSDL 使用。任兩個自訂屬性的完整名稱不能相同。

範例

下列範例顯示使用一個 Parameter 子項目來定義函式參數的 Function 項目。

<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