DefiningExpression 項目 (CSDL)
概念結構定義語言 (CSDL) 中的 DefiningExpression 項目包含一個Entity SQL 運算式以定義概念模型中的函式。 如需詳細資訊,請參閱 Function 項目 (CSDL)和 Entity SQL 語言。
注意: |
---|
若是為了進行驗證,DefiningExpression 項目可以包含任意內容。不過,如果 DefiningExpression 項目不包含有效的 Entity SQL ,Entity Framework 將擲回例外狀況。 |
適用屬性
可以將任何數量的註釋屬性 (自訂 XML 屬性) 套用至 DefiningExpression 項目。 不過,自訂屬性不可屬於任何 XML 命名空間,這是保留供 CSDL 使用。 任兩個自訂屬性的完整名稱不能相同。
範例
下列範例會使用 DefiningExpression 項目定義函式,該函式會傳回書籍發行後所經過的年份。 DefiningExpression 項目的內容是以 Entity SQL 寫入的。
<Function Name="GetYearsInPrint" ReturnType="Edm.Int32" >
<Parameter Name="book" Type="BooksModel.Book" />
<DefiningExpression>
Year(CurrentDateTime()) - Year(cast(book.PublishedDate as DateTime))
</DefiningExpression>
</Function>
另請參閱
概念
Entity Framework 概觀
CSDL 規格
FunctionImport 項目 (CSDL)