Share via


Function 項目 (CSDL)

概念結構定義語言 (CSDL) 中的 Function 項目用於定義或宣告概念模型中的函式。 函式是使用 DefiningExpression 項目 來定義的。 如需詳細資訊,請參閱 How to: Define Custom Functions in the Conceptual Model

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

您必須使用 ReturnType 項目或 ReturnType 屬性 (參閱下方) 的其中之一來指定函式的傳回型別,但不能同時使用。 可能的傳回型別包括任何 EdmSimpleType、實體類型、複雜類型、資料列型別或 ref 型別 (或這些類型其中之一的集合)。 如需詳細資訊,請參閱概念模型型別

適用屬性

下表描述的屬性可套用至 Function 項目。

屬性名稱 必要

Name

函式的名稱。

ReturnType

此函式傳回的型別。

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

範例

下列範例會使用 Function 項目定義函式,該函式會傳回講師受雇之後經過的年份。

<Function Name="YearsSince" ReturnType="Edm.Int32">
  <Parameter Name="date" Type="Edm.DateTime" />
  <DefiningExpression>
    Year(CurrentDateTime()) - Year(date)
  </DefiningExpression>
</Function>

另請參閱

概念

Entity Framework 概觀
CSDL 規格
FunctionImport 項目 (CSDL)

其他資源

CSDL、SSDL 和 MSL 規格
ADO.NET Entity Data Model Tools
model-defined function (Entity Data Model)